GroupDocs.Editor for Java 23.9 Release Notes
GroupDocs.Editor for Java version 23.9 is a new significant update that contains several new features, plenty of useful improvements and a lot of bugfixes in different modules of the GroupDocs.Editor, primarily in HTML/CSS sub-system, e-Book module, and WordProcessing module.
Ability to generate a preview of selected worksheet of a loaded spreadsheet in SVG format
Starting from the version 23.9 the GroupDocs.Editor for Java is able to generate an SVG preview of arbitrary worksheet within spreadsheet. In order to do this need to load a desired spreadsheet document inside the Editor
class, invoke the getDocumentInfo
method, and then in the obtained com.groupdocs.editor.metadata.SpreadsheetDocumentInfo
struct call the generatePreview(int worksheetIndex)
method.
A separate article “Generating worksheets (tabs) preview for spreadsheet” explains this new feature in detail.
New e-Book save options
In previous versions there were two different classes for save options for the e-Book formats family: EpubSaveOptions
and Azw3SaveOptions
. In version 23.9 these classes are deleted and replaced with single common EbookSaveOptions
class. Article “How to edit e-Book file” explains this change in detail.
Support of export into Mobi format
Before the version 23.9 was released, the Mobi format was supported only on import, so it was possible to load and edit a Mobi document, but not to save the edited document in Mobi format. Starting from the version 23.9 this is possible. Article “How to edit Mobi file “ explains this in detail.
Greatly improved HTML parser
In the version 23.9 the HTML parser was significantly improved. Now it is able to correctly process invalid, incorrect and distorted markup. In particular, the next distortions are supported:
- Flow elements nested inside phrasing elements, for example,
P
insideP
orDIV
insideSPAN
. - Prohibited elements and nodes inside TABLE element, for example, prohibited
P
insideTABLE
orDIV
insideTR
will be pushed upward. SELECT
is generated and applied as a parent for the orphanOPTION
/OPTGROUP
elements, becauseOPTION
/OPTGROUP
must be direct children of theSELECT
.COLGROUP
is generated and applied as a parent for theCOL
.- Incorrectly nested lists are properly processed.
- Better parsing of HTML attributes
- And many more
New method for obtaining an HTML markup
Now the EditableDocument
class contains a new public method EditableDocument.getContent()
, which allows to obtains the HTML markup of the opened document and write it to the specified stream with specified text encoding.
Ability to generate a preview of selected page of a loaded WordProcessing document in SVG format
Starting from the version 23.9 the GroupDocs.Editor for Java is able to generate an SVG preview of arbitrary page within a WordProcessing document, like DOC, DOCX, RTF, or ODT. In order to do this need to load a desired WordProcessing document inside the Editor
class, invoke the getDocumentInfo
method, and then in the obtained com.groupdocs.editor.metadata.WordProcessingDocumentInfo
struct call the generatePreview(int pageIndex)
method.
A separate article “Generating page preview for WordProcessing documents” explains this new feature in detail.
Different optimizations
Version 23.9 is mostly focused on different optimizations in memory consumption and performance. In particular, now generated EditableDocument
contains only unique images - all duplicates are removed upon its preparation. Also, once the loaded document was processed, it is stored in the internal global cache and will not be reopened during the instance of the Editor
class exists. Only when Editor.dispose()
method is invoked, all cached data is cleared. However, this optimization imposes a higher responsibility to the end-user — if the Editor.dispose()
method will not be called, the files and resources will stay locked.
Full List of Issues Covering all Changes in this Release
Key | Summary | Category |
---|---|---|
EDITORNET-2423 | Add ability to generate a worksheet (tab) preview for the Spreadsheet module | New feature |
EDITORNET-2475 | Implement Mobi export support | New feature |
EDITORNET-2480 | Intoduce new universal eBook save options | New feature |
EDITORNET-2468 | Add full support of text-decoration-thickness | Improvement |
EDITORNET-2476 | Improve and fix text decorations in forward WordProcessing converter | Improvement |
EDITORNET-2478 | Develop new parser for all text-decoration properties | Improvement |
EDITORNET-2482 | Improve parsing of HTML attributes to properly process invalid quote chars in style attribute value | Improvement |
EDITORNET-2483 | Improve parsing of font-family property in CSS to correctly process invalid CSS markup | Improvement |
EDITORNET-2486 | Develop new public method for obtaining HTML markup in stream | Improvement |
EDITORNET-2489 | Enhance HTML parser to properly cope with invalid nesting in HTML elements | Improvement |
EDITORNET-2491 | Implement a valid parsing of incorrectly nested lists | Improvement |
EDITORNET-2494 | Implement new parser for invalid OPTION/OPTGROUP elements | Improvement |
EDITORNET-2479 | Fix Word-to-HTML converter, which generates invalid HTML markup | Bug |
EDITORNET-2485 | GroupDocs.Editor memory leak while converting WordProcessing document | Bug |
EDITORNET-2490 | Fix bug with skipped HTML markup during parsing | Bug |
EDITORNET-2492 | Fix bug with incorrect child HTML element getter in the new HTML DOM | Bug |
EDITORNET-2495 | Fix issue with collapsed anchors | Bug |
EDITORNET-2521 | Generate page preview of WordProcessing doc in SVG | New feature |
EDITORNET-2493 | Investigate and fix memory leakage | Improvement |
EDITORNET-2523 | Develop global document cache | Improvement |
EDITORNET-2528 | Implement redundant image optimizer | Improvement |
EDITORNET-2520 | Fix bug in new GetContent method | Bug |
EDITORNET-2527 | Fix issue with duplicate image filenames in WordProcessing forward converter | Bug |
EDITORNET-2529 | Fix preparing of different resources in EditableDocument | Bug |
EDITORNET-2531 | Fix bug with reading beyond the end of stream | Bug |
Public API and Backward Incompatible Changes
New public types:
com.groupdocs.editor.htmlcss.css.properties.TextDecorationLineType
com.groupdocs.editor.options.EbookSaveOptions
New public members:
Removed types:
GroupDocs.Editor.Options.EpubSaveOptions
GroupDocs.Editor.Options.Azw3SaveOptions
New public members: