This is the list of changelogs of Spire.Presentation New release and hotfix. You can get the detail information of each version's new features and bug solutions.
Download Spire.Presentation to start a free trial:
Hot Fix Version: 8.11.1
| Category | ID | Description |
| New feature | SPIREPPT-2378 | Supports preserving position information of shapes relative to slides when converting shapes to SVG.
byte[] svgByte = shape.SaveAsSvgInSlide();
FileStream fs = new FileStream("shapePath_" + num + ".svg", FileMode.Create);
fs.Write(svgByte, 0, svgByte.Length);
fs.Close();
|
| New feature | SPIREPPT-2379 | Supports obtaining the height and width of a text area within a shape.
IAutoShape autoShape = shape as IAutoShape; SizeF size = autoShape.TextFrame.GetTextSize(); |
| New feature | SPIREPPT-2384 | Supports retrieving text from different lines within a shape.
Presentation ppt = new Presentation();
ppt.LoadFromFile(inputFile);
ISlide slide = ppt.Slides[0];
for (int i = 0; i < slide.Shapes.Count; i++)
{
IAutoShape shape = (IAutoShape)slide.Shapes[i];
File.AppendAllText(outputFile, "shape" + i + ":" + "\r
");
IList<LineText> lines = shape.TextFrame.GetLayoutLines();
for (int j = 0; j < lines.Count; j++)
{
File.AppendAllText(outputFile,"line[" + j + "]:" + lines[j].Text + "\r
");
}
}
|
| New feature | SPIREPPT-2390 | Supports retrieving the ShapeID property of an OleObject object.
Presentation ppt = new Presentation();
ppt.LoadFromFile(inputFile);
OleObjectCollection oles = ppt.Slides[0].OleObjects;
OleObject oleObject = oles[0];
StringBuilder sb = new StringBuilder();
sb.AppendLine("ShapeID=" + oleObject.ShapeID);
foreach (DictionaryEntry entry in oleObject.Properties)
{
sb.AppendLine(entry.Key + ":" + entry.Value);
}
File.AppendAllText(outputFile, sb.ToString());
|
| Bug | SPIREPPT-2391 | Fixes the issue that the program threw System.InvalidCastException when executing shape.TextFrame.GetTextLocation() method. |
Hot Fix Version: 8.10.2
| Category | ID | Description |
| New feature | SPIREPPT-2324 | Supported the functionality to obtain the text position information within a shape.
Presentation ppt = new Presentation();
ppt.LoadFromFile(inputFile);
StringBuilder sb = new StringBuilder();
ISlide slide = ppt.Slides[0];
for (int i = 0; i < slide.Shapes.Count; i++)
{
IShape shape = slide.Shapes[i];
if (shape is IAutoShape)
{
IAutoShape autoshape = slide.Shapes[i] as IAutoShape;
string text = autoshape.TextFrame.Text;
//obtain the text position information
PointF point = autoshape.TextFrame.GetTextLocation();
sb.AppendLine("Shape " + i + ":" + text + "\r
" + "location:" + point.ToString());
}
}
File.AppendAllText(outputFile, sb.ToString());
ppt.Dispose();
|
| New feature | SPIREPPT-2350 | Supported the functionality to get the Ascent and Descent properties of text within a Shape.
Presentation ppt = new Presentation(); ppt.LoadFromFile(inputFile); ISlide slide = ppt.Slides[0]; IAutoShape autoshape = slide.Shapes[0] as IAutoShape; IList |
| New feature | SPIREPPT-2365 | Supported the functionality to convert shapes to SVG format.
Presentation ppt = new Presentation();
ppt.LoadFromFile("FreeForm.pptx");
ISlide slide = ppt.Slides[0];
int num = 0;
foreach (IShape shape in slide.Shapes)
{
byte[] svgByte = shape.SaveAsSvg();
FileStream fs = new FileStream("shape_" + num + ".svg",FileMode.Create);
fs.Write(svgByte, 0, svgByte.Length);
fs.Close();
num++;
}
|
| Bug | SPIREPPT-2350 | Fixed the issue of SVG files appearing blank when opening them in a browser after converting PPT to SVG. |
Hot Fix Version: 8.9.4
| Category | ID | Description |
| New feature | SPIREPPT-2351 | Supports setting the time for automatic slide switching.
Presentation ppt = new Presentation();
ppt.LoadFromFile("input.pptx");
ppt.Slides[0].SlideShowTransition.AdvanceAfterTime = 1000;
ppt.Slides[1].SlideShowTransition.SelectedAdvanceAfterTime = false;
ppt.SaveToFile("output.pptx", FileFormat.Pptx2013);
ppt.Dispose();
|
| New feature | SPIREPPT-2353 | Optimizes the names of all options under Radial Gradient Style type, marking the original options as deprecated and adding the same options as in MS PowerPoint tools.
Previous options: FromCorner1 FromCorner2 FromCorner3 FromCorner4 New options: FromTopLeftCorner FromBottomLeftCorner FromTopRightCorner FromBottomRightCorner |
| New feature | SPIREPPT-2354 | Supports setting and reading the transparency and brightness of the gradient stop styles.
Presentation ppt = new Presentation();
ppt.LoadFromFile("input.pptx");
StringBuilder stringBuilder = new StringBuilder();
IAutoShape shape = (ppt.Slides[0].Shapes[0] as GroupShape).Shapes[2] as IAutoShape;
GradientStopCollection stops = shape.Fill.Gradient.GradientStops;
for (int i = 0; i < stops.Count; i++)
{
float transparency = stops[i].Color.Transparency;
float brightness = stops[i].Color.Brightness;
stringBuilder.AppendLine("stops" + i + "transparency: " + transparency + " brightness: " + brightness);
}
File.WriteAllText("output.txt", stringBuilder.ToString());
stops[0].Color.Transparency = 0.5f;
stops[0].Color.Brightness = -0.32f;
ppt.SaveToFile("output.pptx", FileFormat.Auto);
ppt.Dispose();
|
| Bug | SPIREPPT-2322 | Fixes the issue that the collection of corner coordinates of polygons obtained was incomplete. |
| Bug | SPIREPPT-2323 | Fixes the issue that the text direction changed after saving slides to images. |
| Bug | SPIREPPT-2334 | Fix the issue that it failed to retrieve connection point coordinates for line connector shapes. |
Hot Fix Version: 8.8.4
| Category | ID | Description |
| New feature | SPIREPPT-2311 | Supports highlighting replaced text.
Presentation ppt = new Presentation();
ppt.LoadFromFile("input.pptx");
DefaultTextRangeProperties format = new DefaultTextRangeProperties();
format.IsBold = TriState.True;
format.Fill.FillType = Spire.Presentation.Drawing.FillFormatType.Solid;
format.Fill.SolidColor.Color = Color.Red;
format.FontHeight = 25;
ppt.ReplaceAndFormatText("Yuma", "AAAA", format);
ppt.SaveToFile("output.pptx",FileFormat.Pptx2016);
|
| Bug | SPIREPPT-2286 | Fixes the issue that the think-cell objects were lost when splitting a PowerPoint document containing think-cell objects. |
| Bug | SPIREPPT-2292 | Fixes the issue that copying a PowerPoint slide containing modern annotation content failed. |
| Bug | SPIREPPT-2315 | Fixes the issue that the program threw System.IndexOutOfRangeException when getting points in the teardrop shape. |
| Bug | SPIREPPT-2317 | Fixes the issue that the color did not take effect when converting to PDF after changing the hyperlink color. |
Hot Fix Version: 8.7.2
| Category | ID | Description |
| New feature | - | Adds a method for resetting the default font list for document conversion.
presentation.setDefaultFontName("华文行楷");
|
| New feature | - | Adds a method for setting the preferred font to be used when converting PDF or image files that require fonts not installed in the system.
presentation.resetDefaultFontName(); |
| Bug | SPIREPPT-2300 | Fixes the issue that the charts were lost when converting PowerPoint documents to images. |
| Bug | SPIREPPT-2302 | Fixes the issue that the resulting file failed to open after manipulating chart data. |
| Bug | SPIREPPT-2303 | Fixes the issue that the program to throw "Spire.Presentation.DocumentUnkownFormatException" exception when loading PowerPoint documents. |
| Bug | SPIREPPT-2304 | Fixes the issue that modifying the text color of hyperlinks did not take effect. |
Hot Fix Version: 8.7.0
| Category | ID | Description |
| New feature | SPIREPPT-2244 | Supports PPTX 2016 and PPTX 2019 file formats.
Spire.Presentation.FileFormat.Pptx2016 Spire.Presentation.FileFormat.Pptx2019 |
| New feature | SPIREPPT-2266 | Supports setting the "Distance from axis" in the horizontal coordinate of the chart.
Presentation ppt = new Presentation(); IChart chart = ppt.Slides[0].Shapes.AppendChart(ChartType.ColumnClustered, new RectangleF(50, 50, 400, 400)); //Gets the PrimaryCategory axis IChartAxis chartAxis = chart.PrimaryCategoryAxis; //Set "Distance from axis" chartAxis.LabelsDistance = 200; //Save to file ppt.SaveToFile(outputFile, FileFormat.Pptx2013); |
| Bug | SPIREPPT-2279 | Fixed the issue that the generated files failed to open after splitting PPT files. |
| Bug | SPIREPPT-2280 | Fixed the issue that there was an incorrect null pointer when loading PPT files. |
| Bug | SPIREPPT-2285 | Fixed the issue that there was an error when determining whether a bar graph was switching columns. |
Hot Fix Version: 8.6.0
| Category | ID | Description |
| New feature | SPIREPPT-2232 | Supports setting the column count for the TextFrame.
Presentation ppt = new Presentation(); ppt.LoadFromFile(inputFile); IAutoShape shape1 = (IAutoShape)ppt.Slides[0].Shapes[0]; shape1.TextFrame.ColumnCount = 2; IAutoShape shape2 = (IAutoShape)ppt.Slides[1].Shapes[0]; shape2.TextFrame.ColumnCount = 3; ppt.SaveToFile(outputFile, FileFormat.Pptx2013); ppt.Dispose(); |
| Bug | SPIREPPT-2205 | Fixes the issue that it prompted an error when editing the chart data of the saved PowerPoint file. |
| Bug | SPIREPPT-2221 | Fixes the issue that the switching Row/Column encountered an error when the chart data have some null values. |
| Bug | SPIREPPT-2215 SPIREPPT-2225 |
Fixes the issue that the application threw "Merged cells found." when splitting table merged cell. |
| Bug | SPIREPPT-2212 SPIREPPT-2243 |
Fixes the issue that the chart data was updated incorrectly. |
| Bug | SPIREPPT-2245 SPIREPPT-2274 |
Fixes the issue that the result was blurry after saving the GroupShape to image. |
Hot Fix Version: 8.4.1
| Category | ID | Description |
| Bug | SPIREPPT-2224 | Fixes the issue that the program entered an infinite loop and caused memory exhaustion when converting PowerPoint to images. |
Hot Fix Version: 8.3.2
| Category | ID | Description |
| Bug | SPIREPPT-2205 | Fixes the issue that an error dialog box popped up when editing PowerPoint chart data. |
Hot Fix Version: 8.2.0
| Category | ID | Description |
| Bug | SPIREPPT-2153 | Fixes the issue that the memory failed to release when the PowerPoint to image conversion program ended. |