Spire.PDF for Java 11.11.11 enhances the conversion from PDF to OFD and PDFA
We are pleased to announce the release of Spire.PDF for Java 11.11.11. This version enhances the conversion from PDF to OFD and PDFA. It also fixes multiple issues related to PDF rendering, conversion, and performance, improving the library's stability and efficiency. Details are listed below.
Here is a list of changes made in this release
| Category | ID | Description |
| Bug | SPIREPDF-6604 | Fixed the issue with incorrect drawing position of PDF footers. |
| Bug | SPIREPDF-7005 | Fixed the issue with excessive memory usage when loading documents. |
| Bug | SPIREPDF-7448 | Fixed the issue where converting PDF to PDF/A-2B would throw a "java.lang.StackOverflowError". |
| Bug | SPIREPDF-7482 | Fixed the issue with the display information content when adding a signature timestamp. |
| Bug | SPIREPDF-7490 | Fixed the issue where setting center alignment for a PdfGridCellContent did not take effect. |
| Bug | SPIREPDF-7660 | Fixed the issue with excessive time consumption when extracting images from PDF. |
| Bug | SPIREPDF-7766 | Fixed the issue with inconsistent image formats when converting PDF to OFD. |
| Bug | SPIREPDF-7809 | Fixed the issue where loading a PDF would report a "file structure is not valid" error. |
| Bug | SPIREPDF-7814 | Fixed the issue where the file could not be opened after drawing an image to the PDF. |
| Bug | SPIREPDF-7827 | Fixed the issue where setMaxLength() would throw a "StringIndexOutOfBoundsException". |
| Bug | SPIREPDF-7830 | Fixed the issue with incorrect content after converting PDF to PDF/A. |
Spire.XLS for Python 15.11.1 supports removing duplicate rows in Excel
We’re pleased to announce the release of Spire.XLS for Python 15.11.1. This version provides the RemoveDuplicates method that removes duplicate rows in a worksheet automatically, and fixes several known bugs as well. More details are as follows.
Here is a list of changes made in this release
| Category | ID | Description |
| New feature | SPIREXLS-5883 | Added support for removing duplicate rows in a worksheet.
workbook = Workbook() workbook.LoadFromFile(inputFile) sheet = workbook.Worksheets[0] sheet.RemoveDuplicates() workbook.SaveToFile(outputFile, FileFormat.Version2013) workbook.Dispose() |
| Bug | SPIREXLS-5898 | Fixed the issue where incorrect formulas occurred after calling Range.Move(). |
| Bug | SPIREXLS-5923 | Fixed the issue where chart labels were missing when converting Excel to PDF. |
| Bug | SPIREXLS-5924 | Fixed the issue where output was inconsistent when converting Excel to PDF. |
| Bug | SPIREXLS-5945 | Fixed the issue where chart conversion failed using SaveChartAsImage. |
| Bug | SPIREXLS-5992 | Fixed the issue where formula calculations were incorrect when converting Excel to PDF. |
Spire.Doc 13.11.5 enhances the display effect of formulas
We're pleased to announce the release of Spire.Doc 13.11.5. This version optimizes OfficeMath handling and enhances the display effect of formulas. More details are listed below.
Here is a list of changes made in this release
| Category | ID | Description |
| Optimization | - | Optimized OfficeMath processing capabilities and enhanced the display effects of formula line wrapping and revisions. |
Spire.PDF 11.11.5 enhances the conversion from PDF to PDF/A
We're pleased to announce the release of Spire.PDF 11.11.5. This version focuses on improving conversion accuracy and enhancing overall stability. Multiple issues related to image processing, OFD conversion, PDF printing, metadata handling, and exception errors have been successfully resolved. More details are listed below.
Here is a list of changes made in this release
| Category | ID | Description |
| Bug | SPIREPDF-3749 | Fixed the issue where incorrect effects were applied to added image watermarks. |
| Bug | SPIREPDF-5688 | Fixed the issue with incorrect output when converting PDF to PDF/A. |
| Bug | SPIREPDF-5889 | Fixed the issue with incorrect output when converting PDF to images. |
| Bug | SPIREPDF-6457 | Fixed the issue where background images were lost when converting a PDF to images. |
| Bug | SPIREPDF-7063 | Fixed the issue with incorrect output when printing PDF documents. |
| Bug | SPIREPDF-7102 | Optimized time consumption and memory usage when converting images using the NetStandard DLL. |
| Bug | SPIREPDF-7105, SPIREPDF-7572 | Fixed the issue where bookmarks were lost when converting PDF to OFD. |
| Bug | SPIREPDF-7562 | Fixed the issue where converting PDF to images threw “System.NotImplementedException”. |
| Bug | SPIREPDF-7749 | Fixed the issue where custom properties added via SetCustomProperty were lost when converting PDF to OFD. |
| Bug | SPIREPDF-7767 | Fixed the issue where converting PDF to OFD threw “System.ArgumentOutOfRangeException”. |
| Bug | SPIREPDF-7807 | Fixed the issue where loading PDF files threw “System.NullReferenceException”. |
| Bug | SPIREPDF-7808 | Fixed the issue where "pdfbuttonfield.IconLayout.IsFitBounds = true" did not take effect. |
Spire.Presentation for Java 10.11.4 fixes an issue occurring on ColdFusion platform
We are pleased to announce the release of Spire.Presentation for Java 10.11.4. This update focuses on improving platform compatibility by addressing an issue that occurred when the library was used on the ColdFusion platform. The fix enhances reliability in cross-platform integration scenarios. Details are as follows:
The following is a list of changes included in this release.
| Category | ID | Description |
| Bug | SPIREPPT-3029 | Fixed an issue where a NullPointerException was thrown when running the library on the ColdFusion platform. |
Spire.Presentation for Python 10.11.1 enhances the conversion from PPTX to images
We’re pleased to announce the release of Spire.Presentation for Python 10.11.1. This update mainly fixes the issues occurred when converting PowerPoint files into images. More details are given below.
Here is a list of changes made in this release
| Category | ID | Description |
| Bug | SPIREPPT-3011 | Fixed the issue where replacing images with SVG caused incorrect rendering. |
| Bug | SPIREPPT-3013 | Fixed the issue where loading files threw an "Error reading adjustment value" exception. |
| Bug | SPIREPPT-3026 | Fixed the issue where converting PPTX to images threw an "Error reading adjustment value" exception. |
| Bug | SPIREPPT-3030 | Fixed the issue with incorrect formula rendering when converting PPTX to images. |
Spire.Doc for Java 13.11.2 supports creating combination charts in Word
We're pleased to announce the release of Spire.Doc for Java 13.11.2. This version supports creating combination charts in Word, and also fixes some issues that occurred when converting Word to PDF, Markdown to Word, and loading, saving Word documents. More details are listed below.
Here is a list of changes made in this release
| Category | ID | Description |
| New feature | SPIREDOC-10972 | Added support for creating combination charts in Word documents.
Document doc = new Document();
Paragraph paragraph = doc.addSection().addParagraph();
Chart chart = paragraph.appendChart(ChartType.Column, 450, 300).getChart();
chart.changeSeriesType("Series 3", ChartSeriesType.Line, true);
System.out.println(chart.getSeries().get(2).getChartType());
doc.saveToFile("ComboChart.docx");
|
| Bug | SPIREDOC-11412 SPIREDOC-11607 | Fixed the issue that incorrect revisions were received. |
| Bug | SPIREDOC-11482 | Fixed the issue that SEQ fields failed to update. |
| Bug | SPIREDOC-11547 | Fixed the issue where the rendering effect was incorrect when converting Markdown to Word. |
| Bug | SPIREDOC-11606 SPIREDOC-11626 | Fixed the issue where converting Markdown to Word threw "java.lang.NullPointerException". |
| Bug | SPIREDOC-11608 | Fixed the issue where WPS links became invalid after saving Word documents. |
| Bug | SPIREDOC-11616 | Fixed the issue where the file size increased significantly after loading and saving Word documents. |
| Bug | SPIREDOC-11620 SPIREDOC-11633 | Fixed the issue that converting HTML to Word threw "com.spire.doc.packages.sprepx: Index is less than 0 or more than or equal to the list count". |
| Bug | SPIREDOC-11627 | Fixed the issue where the chart content was inconsistent when converting Word to PDF. |
| Bug | SPIREDOC-11639 | Fixed the issue that “SdtCheckBox.setChecked(false)” did not take effect. |
Spire.PDF 11.11.1 adds support for enabling print logging in NETStandard DLL
We're pleased to announce the release of Spire.PDF 11.11.1. This version adds support for enabling print logging in the NETStandard DLL. Meanwhile, it removes certain dependencies in NetCore and NetStandard platforms and includes several important bug fixes and optimizations to enhance performance and stability. More details are listed below.
Here is a list of changes made in this release
| Category | ID | Description |
| Adjustment | — | Removed dependencies on System.Security.Cryptography.Pkcs, System.Security.Permissions, and System.Security.Cryptography.Xml in NetCore and NetStandard platforms. |
| New feature | — | Added support for enabling print logging in NETStandard DLL.
PdfDocument doc = new PdfDocument();
doc.LoadFromFile("in.pdf");
doc.PrintSettings.PrintLogger= new DefaultPrintLogger("log.txt");
doc.PrintSettings.PaperSize =PdfPaperSize.A4;
doc.Print();
|
| Bug | SPIREPDF-3758 | Fixed the issue where background color was lost when converting PDF to images. |
| Bug | SPIREPDF-4271 | Fixed the issue where Arabic text content displayed incorrectly when converting PDF to PDF/A-3A. |
| Bug | SPIREPDF-5542 | Optimized the performance of text extraction and search in NETStandard DLL. |
| Bug | SPIREPDF-7753 | Fixed the issue where font effects were incorrect after text replacement. |
| Bug | SPIREPDF-7771 | Fixed the issue where validation failed when converting PDF to PDF/A-1B. |
| Bug | SPIREPDF-7779 | Fixed the issue where errors occurred when printing PDF documents using the NETStandard DLL on UOS x86 systems. |
Spire Office 10.10.0 is released
We’re pleased to announce the release of Spire.Office 10.10.0. In this version, Spire.Doc supports extracting pages from a Word file to a separate file; Spire.XLS supports reading Office cached cloud fonts, Spire.Presentation supports setting fade-in or fade-out duration of audio; Spire.PDF supports validating the timestamp service URL. Meanwhile, a series of known issues are fixed in this update. More details are given below.
In this version, the most recent versions of Spire.Doc, Spire.PDF, Spire.XLS, Spire.Presentation, Spire.Barcode, Spire.DocViewer, and Spire.PDFViewer are included.
DLL Versions:
- Spire.Doc.dll v13.10.3
- Spire.Pdf.dll v11.10.4
- Spire.XLS.dll v15.10.3
- Spire.Presentation.dll v10.10.7
- Spire.Barcode.dll v7.4.1
- Spire.Email.dll v6.6.3
- Spire.DocViewer.Forms.dll v8.9.4
- Spire.PdfViewer.Asp.dll v8.2.6
- Spire.PdfViewer.Forms.dll v8.2.6
- Spire.Spreadsheet.dll v7.5.2
- Spire.OfficeViewer.Forms.dll v8.8.0
- Spire.DataExport.dll 4.9.0
- Spire.DataExport.ResourceMgr.dll v2.1.0
Here is a list of changes made in this release
Spire.Doc
| Category | ID | Description |
| New feature | SPIREDOC-11429 | Added the ExtractPages(int index, int count) method to extract a specified range of pages from the document.
Document doc = new Document();
doc.LoadFromFile("sample.docx");
Document extractPage = doc.ExtractPages(0, 1);
extractPage.SaveToFile("result.docx");
|
| Bug | SPIREDOC-11174 | Fixed the issue where content layout was incorrect when converting Word to PDF. |
| Bug | SPIREDOC-11408 | Fixed the issue where table styles were not rendered correctly when converting Word to PDF. |
| Bug | SPIREDOC-11527 | Fixed the issue where fonts were not displayed correctly when converting Word to PDF. |
| Bug | SPIREDOC-11541 | Fixed the issue where a "System.NotSupportedException" exception was thrown when loading a Markdown stream. |
| Bug | SPIREDOC-11544 | Fixed the issue where text position was offset when converting Word to PDF. |
| Bug | SPIREDOC-11552 | Fixed the issue where a "System.ArgumentException: Parent cannot be null" exception was thrown when getting the page count. |
| Bug | SPIREDOC-11553 | Fixed the issue where restricted editing regions inside tables were not preserved correctly when saving Word document. |
Spre.XLS
| Category | ID | Description |
| New feature | SPIREXLS-5979 | Adds support for reading Office cached cloud fonts by default, besides system font directories and in-memory fonts. |
| Adjustment | - | Modifies the parameter list of the AddDigitalSignature() and IDigitalSignatures.Add() methods.
Old: AddDigitalSignature(X509Certificate2 certificate, string comments, DateTime signTime) New: AddDigitalSignature(string certificatePath, string certificatePassword, string comments, DateTime signTime) |
| Bug | SPIREXLS-5908 | Fixes the issue where extra blank pages were generated when converting Excel files to PDF. |
| Bug | SPIREXLS-5918 | Fixes the issue where an “ArgumentOutOfRangeException” was thrown when loading XLSB files. |
| Bug | SPIREXLS-5933 | Fixes the issue where a “FormatException” was thrown when adding HTML strings. |
| Bug | SPIREXLS-5985 | Fixes the issue where files containing FILTER formulas caused errors when opened in Microsoft Excel. |
Spire.Presentation
| Category | ID | Description |
| New feature | SPIREPPT-2988 | Added support for setting the fade-in or fade-out duration of audio.
// New Append Audio
Presentation pres = new Presentation();
FileStream from_stream = File.OpenRead(inputFile);
RectangleF audioRect = new RectangleF(50, 50, 100, 100);
IAudio audio = pres.Slides[0].Shapes.AppendAudioMedia(from_stream, audioRect);
// Set the duration of the starting fade for 13s
audio.FadeInDuration = 13000f;
// Set the duration of the ending fade for 40s
audio.FadeOutDuration = 10000f;
pres.SaveToFile(outputFile, FileFormat.Pptx2013);
// Retrieve existing documents
FileStream from_stream = File.OpenRead(inputFile);
Presentation presentation = new Presentation();
presentation.LoadFromStream(from_stream, FileFormat.Auto);
foreach (IShape shape in presentation.Slides[0].Shapes)
{
if (shape is IAudio)
{
IAudio audio = shape as IAudio;
// Set the duration of the starting fade for 13s
audio.FadeInDuration = 13000f;
// Set the duration of the ending fade for 20s
audio.FadeOutDuration = 20000f;
}
}
presentation.SaveToFile(outputFile, FileFormat.Pptx2013);
|
| New feature | SPIREPPT-2990 | Added support for cropping audio.
// New Append Audio
Presentation pres = new Presentation();
FileStream from_stream = File.OpenRead(inputFile);
RectangleF audioRect = new RectangleF(50, 50, 100, 100);
IAudio audio = pres.Slides[0].Shapes.AppendAudioMedia(from_stream, audioRect);
// Set the start trimming time 8 seconds
audio.TrimFromStart = 8000f;
// Set the end trimming time 13 seconds
audio.TrimFromEnd = 13000f;
pres.SaveToFile(outputFile, FileFormat.Pptx2013);
// Retrieve existing documents
FileStream from_stream = File.OpenRead(inputFile);
Presentation presentation = new Presentation();
presentation.LoadFromStream(from_stream, FileFormat.Auto);
foreach (IShape shape in presentation.Slides[0].Shapes)
{
if (shape is IAudio)
{
IAudio audio = shape as IAudio;
// Set the start trimming time 8 seconds
audio.TrimFromStart = 8000f;
// Set the end trimming time 13 seconds
audio.TrimFromEnd = 13000f;
}
}
presentation.SaveToFile(outputFile, FileFormat.Pptx2013);
|
| New feature | SPIREPPT-3002 | Added support for setting transparency for tables.
table.Fill.Transparency = 0.5f; // Value range is 1-0, table default color is black // Need to set specific table color, set color code as follows: table[0, 0].FillFormat.FillType = Spire.Presentation.Drawing.FillFormatType.Solid; table[0, 0].FillFormat.SolidColor.Color = Color.Orange; |
| Adjustment | - | Adjusted the usage of the AddDigitalSignature method.
Presentation ppt = new Presentation();
ppt.LoadFromFile("in.pptx");
//Add a digital signature,The parameters: string certificatePath, string certificatePassword, string comments, DateTime signTime
ppt.AddDigitalSignature("test.pfx", "e-iceblue", "111", DateTime.Now);
ppt.SaveToFile("result.pptx", Spire.Presentation.FileFormat.Pptx2016);
ppt.Dispose();
|
| Bug | SPIREPPT-2887, SPIREPPT-2954, SPIREPPT-2989 | Fixed the issue with incorrect content when converting PPT to PDF. |
| Bug | SPIREPPT-2997 | Optimized saving time when creating PPT using templates. |
Spire.PDF
| Category | ID | Description |
| New feature | SPIREPDF-7465 | Added support for validating the timestamp service URL address.
TSAHttpService timestampService = new TSAHttpService("http://time2.certum.pl");
TSAResponse response = timestampService.Check();
//if it is success to receive tsa token
if (response.Success)
{ formatter.TimestampService = timestampService; }
|
| Bug | SPIREPDF-3890 SPIREPDF-5888 SPIREPDF-6680 | Improved the conversion effect from PDF to Word. |
| Bug | SPIREPDF-5657 | Fixed the issue of content loss after converting PDF to image. |
| Bug | SPIREPDF-6451 | Fixed the issue of content loss when converting XPS to PDF. |
| Bug | SPIREPDF-7213 | Fixed the issue of incorrect highlighted vertical text rendering. |
| Bug | SPIREPDF-7378 | Fixed the issue of merging PDF documents throwing exceptions. |
| Bug | SPIREPDF-7680 | Improved the font rendering effect when replacing content. |
| Bug | SPIREPDF-7693 | Fixed the issue of adding timestamps throwing errors. |
| Bug | SPIREPDF-5303 SPIREPDF-7247 SPIREPDF-7719 | Fixed the issue of inconsistent rendering when converting PDF to Tiff. |
| Bug | SPIREPDF-7729 | Fixed the issue of loading PDF documents throwing "NullReferenceException". |
| Bug | SPIREPDF-7768 | Fixed the issue of CreateTemplate() method throwing "IndexOutOfRangeException" when comparing PDFs. |
Spire.PDFViewer
| New feature | SPIREPDFVIEWER-616 | Added support for “Find Previous” and “Find Next” functions. The pdfDocumentViewer1.SearchText() method has been deprecated and replaced with pdfDocumentViewer1.Find().
private void Form1_Load(object sender, EventArgs e)
{
string pdfDoc = @"test.pdf";
if (File.Exists(pdfDoc))
{
this.pdfDocumentViewer1.LoadFromFile(pdfDoc);
this.pdfDocumentViewer1.Find("FindedText", Color.Empty);
}
}
private void before_Click(object sender, EventArgs e)
{
this.pdfDocumentViewer1.FindPrevious();
}
private void next_Click(object sender, EventArgs e)
{
this.pdfDocumentViewer1.FindNext();
}
|
Spire.Office for Java 10.10.0 is released
We're pleased to announce the release of Spire.Office for Java 10.10.0. In this version, the Spire.Doc for Java supports retrieving style change revisions. Spire.PDF for Java supports setting column width for PdfTable. Spire.Presentation for Java supports converting Markdown to PPTX. In addition, many known issues that occurred when converting and processing Word/ Excel/ PDF/PowerPoint files have been successfully fixed. More details are listed below.
Here is a list of changes made in this release
Spire.Doc for Java
| Category | ID | Description |
| New feature | SPIREDOC-9691 SPIREDOC-8447 | Added support for accepting or rejecting partial revisions.
Workbook workbook = new Workbook();
// Get the first worksheet from the workbook
Worksheet sheet = workbook.getWorksheets().get(0);
// Set the value of cell range A1 to "&=Array"
sheet.getCellRange("A1").setValue("&=Array");
// Add a parameter named "Array" with an array of strings as its value
workbook.getMarkerDesigner().addArray("Array", new String[] { "Spire.Xls", "Spire.Doc", "Spire.PDF", "Spire.Presentation", "Spire.Email" });
// Apply the marker design to the workbook
workbook.getMarkerDesigner().apply();
// Calculate all the values in the workbook
workbook.calculateAllValue();
// Auto-fit the rows and columns in the allocated range of the worksheet
sheet.getAllocatedRange().autoFitRows();
sheet.getAllocatedRange().autoFitColumns();
// Save the workbook to the specified file path using Excel 2013 format
workbook.saveToFile(outputFile, ExcelVersion.Version2013);
// Clean up and release resources used by the workbook
workbook.dispose();
|
| New feature | SPIREDOC-10632 SPIREDOC-11261 | Added support for retrieving style change revisions.
Document document = ConvertUtil.GetNewEngineDocument();
document.loadFromFile(inputFile);
RevisionInfoCollection revisionInfoCollection= document.getRevisionInfos();
for (RevisionInfo revisionInfo : (java.lang.Iterable)revisionInfoCollection) {
if(revisionInfo.getRevisionType()==RevisionType.Format_Change){
if(revisionInfo.getOwnerObject() instanceof TextRange){
TextRange range = (TextRange)revisionInfo.getOwnerObject();
TestUtil.writeAllText(outputFile,"TextRange:"+range.getText()+"\r\n");
document.setRevisionsView(RevisionsView.Original);
TestUtil.writeAllText(outputFile,"Original bold:"+range.getCharacterFormat().getBold()+"\r\n");
document.setRevisionsView(RevisionsView.Final);
TestUtil.writeAllText(outputFile,"Final bold:"+range.getCharacterFormat().getBold()+"\r\n");
}
}
}
document.close();
|
| New feature | SPIREDOC-11303 | Added support for tracking revision records for styles.
Document document = new Document();
document.loadFromFile("test.docx");
document.startTrackRevisions("e-iceblue");
for (int i=0; i<document.getSections().get(0).getParagraphs().get(0).getChildObjects().getCount();i++)
{
if (document.getSections().get(0).getParagraphs().get(0).getChildObjects().get(i).getDocumentObjectType()== DocumentObjectType.Text_Range)
{
TextRange tr = (TextRange) document.getSections().get(0).getParagraphs().get(0).getChildObjects().get(i);
tr.getCharacterFormat().setTextColor(Color.RED);
tr.getCharacterFormat().setFontSize(28);
tr.getCharacterFormat().setBold(true);
}
}
document.getSections().get(0).getParagraphs().get(1).appendText("aaa");
document.stopTrackRevisions();
document.saveToFile("test-out.docx");
|
| New feature | SPIREDOC-11313 | Added support for setting the number of characters per line in the document grid.
sec.getPageSetup().setGridType(GridPitchType.Chars_And_Line); sec.getPageSetup().setCharactersPerLine(30); |
| Bug | SPIREDOC-9775 | Fixed the issue where revision acceptance behavior was incorrect. |
| Bug | SPIREDOC-10561 SPIREDOC-11399 SPIREDOC-11405 SPIREDOC-11476 SPIREDOC-11481 SPIREDOC-11518 SPIREDOC-11530 SPIREDOC-11569 SPIREDOC-11585 | Fixed the issues where rendering effect was incorrect when converting Word to PDF. |
| Bug | SPIREDOC-10635 | Fixed the issue that highlight colors could not be retrieved when AcceptChanges() is not called. |
| Bug | SPIREDOC-10995 | Fixed the issue where errors occurred when setting table styles. |
| Bug | SPIREDOC-11433 | Fixed the issue that the table of contents updated incorrectly. |
| Bug | SPIREDOC-11511 SPIREDOC-11599 | Fixed the issues where rendering was incorrect when converting HTML to Word. |
| Bug | SPIREDOC-11519 | Fixed the issue where text was garbled when converting MHT files to DOCX. |
| Bug | SPIREDOC-11520 | Fixed the issue that "IllegalArgumentException" was thrown when loading documents. |
| Bug | SPIREDOC-11525 | Fixed the issue that "NullPointerException" was thrown when loading documents. |
| Bug | SPIREDOC-11531 | Fixed the issue where behavior was incorrect when removing content controls. |
| Bug | SPIREDOC-11551 | Fixed the issue that bookmarks returned empty. |
| Bug | SPIREDOC-11560 | Fixed the issue that selected checkboxes failed to remain checked. |
| Bug | SPIREDOC-11563 | Fixed the issue that content regions were non-editable after accepting revisions. |
| Bug | SPIREDOC-11572 | Fixed the issue where image content was lost when saving documents to WPS format. |
| Bug | SPIREDOC-11589 | Fixed issue with "NullPointerException" being thrown when using replaceBookmarkContent. |
| Bug | SPIREDOC-11597 | Fixed the issue that replacement behavior was incorrect. |
| Bug | SPIREDOC-11600 | Fixed the issue that "Cannot remove because there is no parent" exception was thrown when using StructureDocumentTagCell.removeSelfOnly. |
Spire.XLS for Java
| Category | ID | Description |
| Optimization | SPIREXLS-5921 | Optimized memory consumption when loading Excel documents. |
| Bug | SPIREXLS-5185 | Fixed the issue where retrieving checkboxes failed. |
| Bug | SPIREXLS-5913 | Fixed the issue where the application hung when loading Excel files under a configured JVM maximum memory limit. |
| Bug | SPIREXLS-5930 | Fixed the issue where an out-of-memory error occurred when converting Excel to PDF. |
| Bug | SPIREXLS-5954 | Fixed the issue where formatting was inconsistent when copying worksheets. |
| Bug | SPIREXLS-5956 | Fixed the issue where an "error in set print area" exception was thrown when saving Excel files. |
| Bug | SPIREXLS-5957 | Fixed the issue where an "Input string was not in the correct format" exception was thrown when loading Excel files. |
Spire.PDF for Java
| Category | ID | Description |
| New feature | SPIREPDF-5995 | Added support for setting column width for PdfTable.
// Create PDF document
PdfDocument doc = new PdfDocument();
// Set margins
PdfUnitConvertor unitCvtr = new PdfUnitConvertor();
PdfMargins margin = new PdfMargins();
margin.setTop(unitCvtr.convertUnits(2.54f, PdfGraphicsUnit.Centimeter, PdfGraphicsUnit.Point));
margin.setBottom(margin.getTop());
margin.setLeft(unitCvtr.convertUnits(3.17f, PdfGraphicsUnit.Centimeter, PdfGraphicsUnit.Point));
margin.setRight(margin.getLeft());
// Add a page
PdfPageBase page = doc.getPages().add(PdfPageSize.A4, margin);
// Add table
PdfTable table = new PdfTable();
PdfSolidBrush brush = new PdfSolidBrush(new PdfRGBColor(Color.black));
table.getStyle().setBorderPen(new PdfPen(brush, 0.5f));
table.getStyle().getHeaderStyle().setStringFormat(new PdfStringFormat(PdfTextAlignment.Center));
table.getStyle().setHeaderSource(PdfHeaderSource.Rows);
table.getStyle().setHeaderRowCount(1);
table.getStyle().setShowHeader(true);
table.getStyle().setCellPadding(2);
table.getStyle().setHeaderSource(PdfHeaderSource.Rows);
table.getStyle().setHeaderRowCount(1);
table.getStyle().setShowHeader(true);
// Set header font and style
PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("SimSun", Font.PLAIN, 12));
table.getStyle().getHeaderStyle().setFont(font);
table.getStyle().getHeaderStyle().setBackgroundBrush(PdfBrushes.getCadetBlue());
PdfTrueTypeFont fontBody = new PdfTrueTypeFont(new Font("SimSun", Font.PLAIN, 10));
// Set even row font
table.getStyle().getDefaultStyle().setFont(fontBody);
// Set odd row font
table.getStyle().getAlternateStyle().setFont(fontBody);
// false: distribute by total width proportion, true: use set column width
table.getStyle().isFixWidth(true);
// Define data
String[] data = {"1;2;3;4;5",
"A1;B1;1,391,190,000;18.2%; ",
"A1;B1;126,490,000;1.66%; ",
"A1;B1;65,648,054;0.86%; ",
"A1;B1;82,665,600;1.08%; ",
"A1;B1;37,119,000;0.49%; ",
"A1;B1;327,216,000;4.29%; "
};
String[][] dataSource = new String[data.length][];
for (int i = 0; i < data.length; i++) {
dataSource[i] = data[i].split("[;]", -1);
}
table.setDataSource(dataSource);
for(int i = 0; i < table.getColumns().getCount(); i++)
{
PdfColumn column = table.getColumns().get(i);
column.setWidth(50);
column.setStringFormat(new PdfStringFormat(PdfTextAlignment.Center, PdfVerticalAlignment.Middle));
}
// Add table to page
table.draw(page, new Point2D.Float(0, 50));
// Save document
doc.saveToFile("addTable.pdf", FileFormat.PDF);
|
Spire.Presentation for Java
| Category | ID | Description |
| New feature | - | Added Support for converting Markdown to PPTX files.
Presentation pt = new Presentation();
pt.loadFromFile("input.md", FileFormat.Markdown);
pt.saveToFile("output.pptx", FileFormat.PPTX_2013);
pt.dispose();
|
| New feature | - | Added the AddFromSVGAsShape method to convert SVG into shapes.
Presentation ppt = new Presentation();
ppt.loadFromFile("input.pptx");
for (int i = 0; i < ppt.getSlides().getCount(); i++)
{
ppt.getSlides().get(i).getShapes().addFromSVGAsShapes("in.svg");
}
ppt.saveToFile("output.pptx", FileFormat.PPTX_2013);
ppt.dispose();
|
| Bug | SPIREPPT-2886 | Fixed the issue where added LaTeX formulas were rendered incorrectly. |
| Bug | SPIREPPT-2980 | Fixed the issue where the chart data label formatting was incorrect after converting PowerPoint files to PDF. |
| Bug | SPIREPPT-2981 | Fixed the issue where the text direction was incorrect after converting PowerPoint files to PDF. |
| Bug | SPIREPPT-3009 | Fixed the issue where adding a LaTeX formula (\square) caused a “NullPointerException”. |
Spire.Barcode for Java
| Category | ID | Description |
| Bug | SPIREBARCODE-273 | Fixed the issue where the application threw a "java.lang.OutOfMemoryError" when scanning an image. |
| Bug | SPIREBARCODE-276 | Fixed the issue of incorrect result data when scanning an image. |