The latest public release of Solid Framework SDK is now available for download from the developer portal at This is version 10.0.9084.


Better reconstruction when converting to HTML

  • Layout is now correct even for non-contiguous page ranges.
  • Layout is improved when reconstructing tables.

Smaller files created when saving a modified PDF

  • Object Stream Compression is now supported

Improvements for Accessibility

  • Alt-text is now correctly extracted when reconstructing Word documents.

Further Improvements in the handling of Non-Standard Encoded text

Updated 3rd Party Libraries


The latest public release of Solid Framework SDK is now available for download from the developer portal at This is version 10.0.8920.


Improved consistency when dealing with borderless tables.

Better Table Detection

Identifying whether or not text is part of a table is complex, particularly when they are no borders to delimit the table edges. This release increases the accuracy with which this is achieved.

More Logical Tables are now Merged Correctly

Solid Framework aims to recreate a single table where it appears as if it has been split over multiple pages within the PDF (i.e. it is a single “logical” table).

This release improves detection of table columns, which allows more logical tables to be recognised and reconstructed.

Improved Column Title Detection

This release is better at identifying text that represents column titles (i.e. the first row of a table).

Solid Framework – 10.0.8870

The latest public release of Solid Framework SDK is now available for download from the developer portal at This is version 10.0.8870.

This is a Major Release. and includes a number of breaking changes.


Extraction of wide tables that were tiled over multiple pages

If a table within a spreadsheet is wider than the paper size then it will be created as a multi-page “tiled” PDF. Previously this would have resulted in the file being reconstructed with multiple tables.

Solid Framework 10 is able to reconstruct these pages to give a single wide table.

Example of a tiled PDF being reconstructed as a wide spreadsheet

This functionality is enabled by default, but can be disabled by setting DetectTiledPages to false.

Exact mode for converting to HTML

Solid Framework has been able to reconstruct HTML for many years. This has been done by “reflowing” the document which results in a web page that may be easy to read, but that may not look like the original PDF.

Solid Framework 10 now allows HTML to be created that looks very similar to the PDF by setting ExactMode to true.

Better Handling of Z-Order

Some PDFs with complex layers were not being reconstructed correctly. Solid Framework 10 now handles these files better.


Improvements have been made in being more consistent with font types and styles to provide a more aesthetic document.


A number of PDF files that could not previously be converted due to errors can now be corrected and a valid document reconstructed from them.

Breaking Changes

A number of changes have been made to simplify the API and improve consistency between the managed and native C++ SDK

Run time errors

License.Import now throws InvalidLicenseException  immediately for invalid licenses, rather than delaying the error until conversion is attempted. This could result in slightly different behaviour than was previously the case.

Compile time errors

The following may cause compile time errors:

Code Removal

  • LicenseCollection has been removed. Use SolidFramework.License.Import instead
  • ValidateOnly and VerifyOnly properties have been removed from PdfToPdfAConverter. Use Validate and Verify methods instead


  • PagesModel.PagesCount has been deprecated in favor of PagesModel.PageCount

Renamed properties

  • PdfPageHolder.CommentsCount has been renamed to PdfPageHolder.CommentCount
  • PdfPageHolder.LinksCount has been renamed to PdfPageHolder.LinkCount
  • OcrTextRegion.OcrLines has been renamed to OcrTextRegion.OcrLineCount
  • OCRTransformationResult.GetPageWordsCount has been renamed to OCRTransformationResult.GetPageWordCount
  • OCRTransformationResult.GetPageConfidentWordsCount has been renamed to OCRTransformationResult.GetPageConfidentWordCount
  • OCRTransformationResult.GetDocumentWordsCount has been renamed to OCRTransformationResult.GetDocumentWordCount
  • OCRTransformationResult.GetDocumentConfidentWordsCount has been renamed to OCRTransformationResult.GetDocumentConfidentWordCount

Property replaced with Method

  • The ViewerPreferences property of PdfDocument.Catalog now has been replaced with a GetViewerPreferences(bool create) method and a RemoveViewerPreferences() method

C++ API specific changes

Changes to Names

  • Methods in the C++ API are now all use Pascal-case (e.g. setOutputPath is now SetOutputPath)
  • Methods starting GetIs, GetHas and GetWas have had their ‘Get‘ dropped
  • PagesModelBase class has been renamed to PagesModel
  • ConverterBase classes have been renamed to Converter (e.g. PdfToWordConverterBase is now PdfToWordConverter)

Other Changes

  • SolidFramework.cpp no longer includes stdafx.h
  • CustomData properties have been removed from the Converter classes. (Custom data can captured within a lambda expression when setting the std::function progress/warning callback or stored within a subclass when overriding OnProgress/OnWarning)
  • Collections in the C++ API are now exported as std::vectors