- Reduced excessive spacing in rows in tables. After exporting table content from PDF documents to HTML files, the browser tended to create large spaces around the data in table cells when the paragraph tag, <p>, appeared in those cells. Added settings in the style sheets of 0 points for the top and bottom margins for each paragraph flag (<p>) in a table, eliminating these unnecessary spaces. As a result, the tables that now appear in HTML output feature spacing that matches the spacing seen in the original PDF document.
- Improved table detection in cases where column headings in tables were center or left justified and subsequent rows were right justified. This allows the headings to align properly with the rows below them in the HTML output content.
- PDF Alchemist can now convert PDF documents into XML files.
- When exporting a table from a PDF document, the total count of rows and columns in that table are added to the <table> element to make analysis of the export process more efficient.
- Corrected a problem with detecting and providing an appropriate font for text when exporting to XML. The system had been sending text to an XML file and changing the original serif font, such as Times New Roman, with a non-serif font, like Arial.
- Improved table detection in cases where column headings did not align with the text below.
- When generating XML output, the “-purpose” tag now defaults to “indexing.” In this case the text copied to the XML file is not formatted for specifically for layout and appearance, but rather to make it easier to create an index for this text to make searching easier. It is possible for the user to manually change this setting to “balanced” instead.
- Corrected a memory corruption issue that caused applications to crash when calling PDF Alchemist from .NET.
- When a customer extracts the PDF Alchemist software package when installing the product, the installation process now creates a folder for storing the software files that is named to include the version number of the PDF Alchemist release.
- The documentation now describes the return values provided from the processPDF function.
- Improved separation of table rows when text is indented in the first cell of a row.
Updates that may impact output text or visual appearance:
- Control of hyphenation removal added. Previous versions removed hyphens by default, hyphens are now preserved by default and you can use the removeHyphen parameter to enable removing them. Note that hyphenation removal is performed by a simple algorithm without language or dictionary support, so it is a good idea to run a few sample files through and then decide whether or not you need to use the removeHyphen parameter.
- Added the “purpose” option to control the handling of element processing for different workflows. Defaults to “balanced.” Use “indexing” to optimize PDF Alchemist output for indexing/search applications. When specifying “indexing” as the purpose the preservation of text as text is more important than preserving the appearance of the original PDF document when overlapping or transparent elements are involved.
- Updates to improve detection and output of multi-column sub layouts on a page where the page is predominantly single-column
- Updates to better break lines when visual layout indicates that adjacent lines are different lines, instead of continued lines of a paragraph
- Resolves issue with order of images being written in output in cases where input might be in multiple columns
- Resolves issue with improper handling of some non-letter characters in unembedded fonts that do not specify an encoding
- Resolves issue with association of text to proper image in multi-column image and caption layouts
- Resolves rendering issue with PDFs having image masks that specify their bits per component value
Updates that should not impact output text or visual appearance:
- EPUB output now defaults to writing new sections or chapters for every highest-level bookmark or Table of Contents (ToC) entry in input PDF
- Resolves issues with EPUB output validation.
- Resolved problem with an erroneous member property “width,” that had been written out for “col” members
- Resolves issue with EPUB output not having bookmarks/table of contents written when requested
- Resolves issue with invalid output being generated when splitting on every page, and when a page ended with a list item
- Improves error handling in cases where invalid PDF files are supplied for processing
- Resolved line-breaking issue. Some lines that ended in numbers were being combined with lines to follow, and the product was converting the lines into a table of content-type lists.
- Resolved alignment issue for graphics, where some graphics that were right-aligned in the PDF input file were not right-aligned in output.
- Fixed issue where some images were left out of the output file because the software incorrectly associated them with page headers and footers.
- Additional checking for line groups and associated splitting heuristics added for lines that end with delimiter symbols, including ‘]’, ‘)’, ‘}’, or ‘>’.
- Fixed issue where text was left out of the output file because the software incorrectly associated that text with page headers and footers.
- Fixed issue where the software was incorrectly formatting lists of content as borderless tables.
- Fixed issue with table column positions, featuring cells in a column were improperly centered, or otherwise out of place.
- Fixed issue with paragraph breaking when lines only contain one word per line.
- PDF Alchemist now supports generating EPUB output files.
- The product supports dividing the source content into multiple output files for HTML or chapters for EPUB files. The content is split based on bookmarks found in the PDF document.
- Support also added for dividing source content into multiple output files for HTML or chapters for EPUB files, with the content split by a pre-determined number of pages. For example, a document could be set to divide into a separate HTML output file every ten pages of the original PDF document.
- Fixed problem in generating tables that caused multiple input cells to be merged into a single output cell.
- The system can now detect a PDF table of contents (outlines / “bookmarks”) and convert it into a Table of Contents view in a separate frame in an HTML file. Output is generated with the Bookmark View of the HTML as a separate file from the standard output, so that users can distribute the same output both with a bookmarks pane and without one.
- Allows links to be generated in standard HTML formatting. The product can override formatting in the source PDF. This allows users, for example, to make invisible PDF links visible in the HTML output.
- Image generation improvements & control over generated image resolution.
- A variety of improvements and fixes, including improvements related to lists, tables, and form generation.
- Support for generating reflowable AcroForms to HTML forms has improved but the feature is still under development.
Version 1.1, Initial Production Release
PDF Alchemist is available for Windows 64, Windows 32, Linux 64, and MacOS 64 platforms, and provides both Command Line access and API access.
The product accepts one PDF file as input and generates a zip file, containing a folder with a single HTML file (page1.html), a stylesheet (stylesheet.css), a fonts folder, and an images folder.
The software positions images and text in the output to match their placing in the PDF source document. The images are extracted from the PDF source document and references them using inline tags in the HTML output.
It also formats tables in the PDF document as HTML tables to match the original, and detects page background images so that they also appear in the output as background images.
AcroForms are detected and converted into HTML forms.
- Paragraphs that span across pages are combined into a single continuous text flow.
- Multi-column text in the input is converted into single column reflowable and resizable text in output.
- Running headers and footers are removed.
- Extracted fonts are referenced in the stylesheet when possible.
- Font styles, such as bold, italic, and underline, are preserved from the input document to the HTML export
- Text indentation is detected and preserved
- Text justification (right, center, left) is preserved
- Text flow margins are detected and preserved
- Numbered and bulleted lists are detected and preserved
- Internal links/references are detected and converted to HTML anchors and references in output.
- Links to external URL addresses are detected and converted to HTML hyperlinks.