Spire.Office for Java 9.9.0 is released

2024-09-29 08:43:56

We are excited to announce the release of Spire.Office for Java 9.9.0. In this version, Spire.Doc for Java supports determining if a bookmark is hidden; Spire.PDF for Java supports extracting text from specified areas; Spire.XLS for Java supports the revision function; Spire.Presentation for Java supports getting the names of all embedded fonts in a PowerPoint file. Moreover, a lot of known issues are fixed successfully in this version. More details are listed below.

Click the link to download Spire.Office for Java 9.9.0:

Here is a list of changes made in this release

Spire.Doc for Java

Category ID Description
New feature SPIREDOC-7237 Supports determining if a bookmark is hidden with the new method, "bookmark.isHidden()".
New feature SPIREDOC-10287 Supports updating the character count with the new method, "document.updateWordCount()".
New feature SPIREDOC-10771 Supports embedding font files into the document when converting Word documents to HTML documents with the new method, "document.getHtmlExportOptions().setFontEmbedded(true)".
Bug SPIREDOC-10641 Fixes the issue that line spacing became inconsistent after replacing bookmark content.
Bug SPIREDOC-10671 Fixes the issue that regular format Latex formula code added to the document was converted into italic style.
Bug SPIREDOC-10676 Fixes the issue that removing the italic style from Latex formulas did not take effect.
Bug SPIREDOC-10739 Fixes the issue that the set edit restriction password did not work in MS Word or WPS tools.
Bug SPIREDOC-10757 Fixes the issue that garbled content appeared when converting Word documents to PDF documents.
Bug SPIREDOC-10769 Fixes the issue that the program hung when converting Markdown documents to Word documents.
Bug SPIREDOC-10771 Fixes the issue that an occasional exception occurred during stress testing of the merge mail function.
Bug SPIREDOC-10740 Optimizes the speed of converting Word documents to PDF documents.
Bug SPIREDOC-10457 Fixes the issue that the text layout was incorrect after converting Word documents to PDF documents.
Bug SPIREDOC-10791 Fixes the issue that the created table of contents field was not updated correctly.
Bug SPIREDOC-10813 Fixes the issue that SimSun font was replaced with Times New Roman font after converting Word documents to PDF documents.
Bug SPIREDOC-10821 Fixes the issue that the program threw "Cannot find any fonts in specified font sources" exception when converting Word documents to PDF documents under the system environment where fonts were not installed.
Bug SPIREDOC-10825 Fixes the issue that the program threw java.lang.NullPointerException when using Map type parameters in MailMergeDataTable class.

Spire.PDF for Java

Category ID Description
New feature SPIREPDF-6920 Adds the PreserveAllowedMetadata property to support preserving XMP data when converting PDF to PDF/A format documents.
PdfStandardsConverter convert= new PdfStandardsConverter(outputFile_pdf);
convert.getOptions().setPreserveAllowedMetadata(true);
convert.toPdfA2A(outputFile_pdfA2A);
New feature SPIREPDF-6977 Add a new interface 'PdfTextReplaceOptions.setReplacementArea(Rectangle2D rect)' to support extracting text from specified areas.
PdfPageBase page = pdf.getPages().get(0);
PdfTextReplacer replacer= new PdfTextReplacer (page);
replacer.getOptions().setReplacementArea(new Rectangle2D.Float(10, 0, 841, 150));
replacer.getOptions().setReplaceType(EnumSet.of(ReplaceActionType.WholeWord));
replacer.replaceAllText("SQL","Now SQL");
New feature SPIREPDF-6962 Adds a deprecation status indicator to the 'PdfDocument.isPasswordProtected(filename)' method.
Bug SPIREPDF-6959 Fixes the issue that the program threw a 'java.lang.NullPointerException' when replacing text.
Bug SPIREPDF-6973 Fixes the issue that the program threw a 'java.lang.NullPointerException' when extracting text.
Bug SPIREPDF-6976 Fixes the issue that the program threw a 'java.lang.ArrayIndexOutOfBoundsException' when extracting text.
Bug SPIREPDF-6992 Fixes the issue that the program threw a 'java.lang.OutOfMemoryError' when determining if a PDF document was password protected.
Bug SPIREPDF-6994 Fixes the issue that the program threw a 'java.lang.NoClassDefFoundError' when compressing images.
Bug SPIREPDF-7001 Fixes the issue that the program threw a 'java.lang.OutOfMemoryError' when merging documents after replacing text.

Spire.XLS for Java

Category ID Description
New feature SPIREXLS-5371 Supports the revision function.
Workbook workbook = new Workbook();
workbook.loadFromFile("input.xlsx");
workbook.setTrackedChanges(true);  
workbook.acceptAllTrackedChanges(); 
workbook.saveToFile("output.xlsx", ExcelVersion.Version2013);
workbook.dispose();
New feature SPIREXLS-5362 Optimizes the speed of converting Excel documents to HTML documents.
Bug SPIREXLS-5149 Fixes the issue that print area settings are not fully copied when duplicating worksheets.
Bug SPIREXLS-5295 Fixes the issue that some data is incorrect when converting Excel documents to PDF documents.
Bug SPIREXLS-5368 Fixes the issue that chart contents are lost when converting worksheets to images.
Bug SPIREXLS-5368 Fixes the issue that the program throws an exception "Input string was not in the correct format." when converting charts to images.
Bug SPIREXLS-5432 Fixes the issue that the program throws a java.lang.IllegalArgumentException exception when loading Excel documents.
Bug SPIREXLS-5435 Fixes the issue that conditional formatting is lost when converting Excel documents to XML documents and then back to Excel documents.
Bug SPIREXLS-5441 Fixes the issue that the program throws a java.lang.OutOfMemoryError exception when converting Excel documents to PDF documents.
Bug SPIREXLS-5442 Fixes the issue that fonts are incorrect when converting Excel documents to PDF documents.

Spire.Presentation for Java

Category ID Description
New feature SPIREPPT-2602 Supports getting the names of all embedded fonts in a PowerPoint file.
ArrayList<String> embedFonts = ppt.getEmbedFonts();
Bug SPIREPPT-2597 Fixes the issue that the program threw java.lang.ClassCastException when converting a PPTX document to a PPT document.
Bug SPIREPPT-2599 Fixes the issue that the program threw java.lang.ClassCastException when calling table.distributeRows(0,1) method after adding a formula to a table cell.
Bug SPIREPPT-2601 Fixes the issue that the program suspended when loading a PPTX document.