Spire.Presentation for Java 11.3.5 supports saving PPTX to video formats
We’re pleased to announce the release of Spire.Presentation for Java 11.3.5. This update adds a new feature to support saving PPTX files as video formats, such as MP4 and WMV. More details are as follows.
Here is a list of changes made in this release
| Category | ID | Description |
| New Feature | - | Added support for saving PPTX to video formats.
String inputFile = "input.pptx";
String outputFile = "output.mp4";
Presentation presentation = new Presentation();
presentation.loadFromFile(inputFile);
SaveToVideoOption saveOption = new SaveToVideoOption.Builder("D:\\tools\\ffmpeg-7.1.1-essentials_build\\bin") // Set ffmpeg path
.setFps() // Frame rate
.setThreadsCount() // Number of threads
.setDurationForEachSlide() // Duration for each slide
.build();
presentation.setSaveToVideoOption(saveOption);
presentation.saveToFile(outputFile, FileFormat.AUTO);
|
Spire.Doc for Java 14.3.5 supports configuring formula conversion to MathML when converting Word to HTML
We're pleased to announce the release of Spire.Doc for Java 14.3.5. This version supports configuring formula conversion to MathML when converting Word to HTML. Meanwhile, some issues that occurred when loading Word documents, converting Word to PDF, and managing OLE objects have also been successfully fixed. More details are listed below.
Here is a list of changes made in this release
| Category | ID | Description |
| New Feature | SPIREDOC-11792 | Supports configuring formula conversion to MathML when converting Word to HTML.
HtmlExportOptions options = document.getHtmlExportOptions(); options.setOfficeMathOutputMode(HtmlOfficeMathOutputMode.Math_ML); |
| Bug Fix | SPIREDOC-10476 | Fixes the issue where a NullPointerException was thrown when loading a Word document in the JDK 11 environment. |
| Bug Fix | SPIREDOC-11628 | Fixes the issue where the "There are too many styles in the document" exception was thrown when loading a Word document. |
| Bug Fix | SPIREDOC-11635 | Fixes the issue where the "Invalid format string" exception was thrown when loading a Word document containing signatures. |
| Bug Fix | SPIREDOC-11713 | Fixes the issue where images were lost when converting Word to PDF. |
| Bug Fix | SPIREDOC-11819 | Fixes the issue where OLE object icons became abnormally large upon double-clicking after being added to a Word document. |
| Bug Fix | SPIREDOC-11828 | Fixes the issue where a NullPointerException was thrown when deleting OLE objects from a Word document. |
| Bug Fix | SPIREDOC-11843 | Fixes the issue where the java.lang.Float cannot be cast to java.lang.Integer exception was thrown when loading a Word document. |
| Bug Fix | SPIREDOC-11847 | Fixes the issue where content overlapped when converting Word to PDF. |
Spire.XLS for Java 16.3.2 enhances Excel to PDF conversion stability
We’re pleased to announce the release of Spire.XLS for Java 16.3.2. This version enhances the stability of Excel-to-PDF conversion. It also fixes several issues, including a problem where the application would hang when loading a document. More details are listed below.
Here is a list of changes made in this release
| Category | ID | Description |
| Bug Fix | SPIREXLS-6109 | Fixed an issue where some borders were missing when converting Excel to PDF on a Linux server. |
| Bug Fix | SPIREXLS-6119 | Fixed an issue where the application would hang when loading a document. |
Spire.Presentation for Python 11.3.0 improves the conversion from PowerPoint to images
We’re pleased to announce the release of Spire.Presentation for Python 11.3.0. This update resolves a PowerPoint-to-image conversion issue, improving reliability and output quality. More details are as follows.
Here is a list of changes made in this release
| Category | ID | Description |
| Bug Fix | SPIREPPT-3080 | Fixed an issue where the program would hang when converting PowerPoint documents to images. |
Spire.PDF for Java 12.3.6 enhances the conversion from PDF to PDF/A-1a
We're pleased to announce the release of Spire.PDF for Java 12.3.6. This version fixes several issues encountered during PDF to PDF/A-1a conversion and PDF document loading. More details are listed below.
Here is a list of changes made in this release
| Category | ID | Description |
| Bug Fix | SPIREPDF-7682 | Fixed an issue where images placed at the bottom layer appeared above text after converting PDF to PDF/A-1a. |
| Bug Fix | SPIREPDF-7944 | Fixed an issue where the application hung when loading a PDF document. |
| Bug Fix | SPIREPDF-7978 | Fixed an issue where partial text was lost after converting PDF to PDF/A-1a. |
| Bug Fix | SPIREPDF-7979 SPIREPDF-7993 | Fixed an issue where the application threw a "file structure is not valid" exception when loading a PDF document. |
Spire.Presentation 11.3.1 optimized the conversion from PowerPoint to PDF
We're pleased to announce the release of Spire.Presentation 11.3.1. This version optimized the conversion functionality from PowerPoint to PDF. Meanwhile, some issues that occurred when retrieving shape shadows, loading 3D animations, and converting documents have also been successfully fixed. More details are listed below.
Here is a list of changes made in this release
| Category | ID | Description |
| Bug Fix | SPIREPPT-2728 | Fixes the issue where shape shadow effects could not be retrieved. |
| Bug Fix | SPIREPPT-3072 | Fixes the issue where text offset occurred when converting PowerPoint to PDF. |
| Bug Fix | SPIREPPT-3081 | Fixes the issue where the application threw a "Property not found" exception when loading a PowerPoint containing 3D animations. |
| Bug Fix | SPIREPPT-3085 | Fixes the issue where the application threw an "Object reference not set to an instance of an object" exception when converting PowerPoint to PDF. |
Spire.Doc 14.3.5 supports converting Word to Excel
We’re pleased to announce the release of Spire.Doc for .NET 14.3.5. This release supports Word-to-Excel conversion, enabling direct export of Word content into Excel spreadsheets. In addition, export-related classes have been reorganized under a clearer namespace structure for improved API clarity. More details are as follows.
Here is a list of changes made in this release
| Category | ID | Description |
| New Feature | - | Added support for Word to Excel conversion.
Document.SaveToFile("output.xlsx", FileFormat.XLSX);
|
| Adjustment | - | Moved HtmlExportOptions from Spire.Doc to Spire.Doc.Exporting. |
| Adjustment | - | Moved MarkdownExportOptions from Spire.Doc to Spire.Doc.Exporting. |
Spire.PDF 12.3.7 Enhances PDF to Word and Image Conversion
We’re pleased to announce the release of Spire.PDF 12.3.7. This version enhances PDF to Word and image conversion. It also fixes multiple issues, including a problem where merging PDFs threw System.OutOfMemoryException and an issue where content formatting was incorrect when converting PDF to Word. More details are listed below.
Here is a list of changes made in this release
| Category | ID | Description |
| Bug Fix | SPIREPDF-5696 SPIREPDF-6453 | Fixed an issue where merging PDFs threw a System.OutOfMemoryException. |
| Bug Fix | SPIREPDF-7070 | Fixed an issue where merged PDF documents could not be opened in web browsers. |
| Bug Fix | SPIREPDF-7938 | Fixed an issue where checkmark symbols in checkboxes were missing after converting PDF to PDF/A-1a and other standard formats. |
| Bug Fix | SPIREPDF-7957 | Fixed an issue where content formatting was incorrect when converting PDF to Word. |
| Bug Fix | SPIREPDF-7965 | Fixed an issue where converting PDF to images threw a System.NullReferenceException. |
| Bug Fix | SPIREPDF-7966 | Fixed an issue where loading PDF threw an "An item with the same key has already been added" exception. |
| Bug Fix | SPIREPDF-7969 | Fixed an issue where finding text within a specified area returned incorrect results. |
Spire.Doc 14.3 supports adding and manipulating SmartArt
We're pleased to announce the release of Spire.Doc 14.3. This update introduces support for the “Automatically adjust right indent when defining grid” and "Kerning for fonts" features, along with several new interfaces for adding and manipulating SmartArt graphics. Additionally, three issues affecting Word document processing have been resolved. More details are listed below.
Here is a list of changes made in this release
| Category | ID | Description |
| New Feature | SPIREDOC-9870 | Added support for the "Automatically adjust right indent when defining grid" feature.
paragraph.Format.AdjustRightIndent = true; // Default value is true |
| New Feature | SPIREDOC-11030 | Added support for the "Kerning for fonts" feature.
textRange.CharacterFormat.Kerning = 2.5f; |
| New Feature | SPIREDOC-10514 SPIREDOC-11494 | Added several new interfaces for adding and manipulating SmartArt graphics.
Document document = new Document();
Section section = document.AddSection();
Spire.Doc.Documents.Paragraph paragraph = section.AddParagraph(); paragraph.Format.HorizontalAlignment = HorizontalAlignment.Center;
Spire.Doc.Fields.TextRange textRange = paragraph.AppendText("RepeatingBendingProcess");
textRange.CharacterFormat.FontSize = 28f;
textRange.CharacterFormat.FontName = "Times New Roman";
paragraph = section.AddParagraph();
paragraph = section.AddParagraph();
paragraph.Format.HorizontalAlignment = HorizontalAlignment.Center;
// Add SmartArt with "Segmented Process" layout
Spire.Doc.Fields.Shapes.Shape shape = paragraph.AppendSmartArt(SmartArtType.RepeatingBendingProcess, 432, 252);
SmartArt repeatingBendingSmartArt = shape.SmartArt;
// Add node text
SmartArtNode process1 = repeatingBendingSmartArt.Nodes[0];
process1.Text = "1";
((Spire.Doc.Fields.TextRange)process1.Paragraphs[0].ChildObjects[0]).CharacterFormat.FontName = "Calibri";
((Spire.Doc.Fields.TextRange)process1.Paragraphs[0].ChildObjects[0]).CharacterFormat.FontSize = 20f;
((Spire.Doc.Fields.TextRange)process1.Paragraphs[0].ChildObjects[0]).CharacterFormat.TextColor = Color.Crimson;
// Add node text
SmartArtNode process2 = repeatingBendingSmartArt.Nodes[1];
process2.Text = "2";
((Spire.Doc.Fields.TextRange)process2.Paragraphs[0].ChildObjects[0]).CharacterFormat.FontSize = 15f;
// Add node text
SmartArtNode process3 = repeatingBendingSmartArt.Nodes[2];
process3.Text = "3";
((Spire.Doc.Fields.TextRange)process3.Paragraphs[0].ChildObjects[0]).CharacterFormat.FontSize = 10f;
// Add node text
SmartArtNode process4 = repeatingBendingSmartArt.Nodes[3];
process4.Text = "4";
((Spire.Doc.Fields.TextRange)process4.Paragraphs[0].ChildObjects[0]).CharacterFormat.FontSize = 10f;
// Add node text
SmartArtNode process5 = repeatingBendingSmartArt.Nodes[4];
process5.Text = "5";
((Spire.Doc.Fields.TextRange)process5.Paragraphs[0].ChildObjects[0]).CharacterFormat.FontSize = 10f;
document.SaveToFile(outputFile, FileFormat.Docx);
document.Close();
|
| New Feature | SPIREDOC-11622 | Added support for retrieving text from all nodes in SmartArt.
using (Document document = new Document(inputFile))
{
// Iterate through all sections
foreach (Section section in document.Sections)
{
if (section?.Paragraphs == null) continue;
// Iterate through all paragraphs in the section
foreach (Spire.Doc.Documents.Paragraph paragraph in section.Paragraphs)
{
foreach (var childObj in paragraph.ChildObjects)
{
if (childObj is Spire.Doc.Fields.Shapes.Shape shape && shape.HasSmartArt)
{
SmartArt smartArt = shape.SmartArt;
if (smartArt == null) continue;
TraverseSmartArtNodes(smartArt.Nodes, builder, 0);
}
}
}
}
}
public static void TraverseSmartArtNodes(SmartArtNodeCollection nodes, StringBuilder builder, int level)
{
if (nodes == null || nodes.Count == 0) return;
for (int nodeIdx = 0; nodeIdx < nodes.Count; nodeIdx++)
{
SmartArtNode node = nodes[nodeIdx];
if (node == null) continue;
// Clean node text
string nodeText = node.Text != null ? node.Text.Trim() : "Empty Text";
if (nodeText == "\r" || string.IsNullOrEmpty(nodeText)) continue;
// Concatenate node level identifier
string nodePrefix;
switch (level)
{
case 0:
nodePrefix = "smartArt.Nodes";
break;
case 1:
nodePrefix = "smartArt.Nodes.ChildNodes";
break;
case 2:
nodePrefix = "smartArt.Nodes.ChildNodes.ChildNodes";
break;
default:
nodePrefix = $"smartArt.Nodes.Level{level}";
break;
}
// Basic text output
builder.AppendLine($"{nodePrefix}_{nodeIdx}: {nodeText}");
// Recursively process child nodes
TraverseSmartArtNodes(node.ChildNodes, builder, level + 1);
}
}
|
| Bug Fix | SPIREDOC-11724 | Fixed the issue where paragraph text was retrieved incorrectly. |
| Bug Fix | SPIREDOC-11743 | Fixed the issue where Arabic text fonts were altered when converting Word to PDF. |
| Bug Fix | SPIREDOC-11787 | Fixed the issue where extra blank pages appeared during page extraction. |
Spire.PDF for Java 12.3.2 Adds Support for Setting PDF 2.0 Version
We’re pleased to announce the release of Spire.PDF for Java 12.3.2. This version adds support for setting the PDF 2.0 version. It also fixes several issues, including a problem where punctuation marks appeared at the beginning of lines when rendering Chinese text. More details are listed below.
Here is a list of changes made in this release
| Category | ID | Description |
| New Feature | SPIREPDF-4796 | Added support for setting the PDF 2.0 version.
doc.getFileInfo().setVersion(PdfVersion.Version_2_0); |
| Bug Fix | SPIREPDF-6872 | Fixed an issue where punctuation marks appeared at the beginning of lines when rendering Chinese text. |
| Bug Fix | SPIREPDF-7863 | Fixed an issue where OFD files converted from PDF failed to open with ofd.umd.js. |