Spire.Presentation for .NET
.NET PowerPoint API - Processing PPT, PPS, PPTX, PPSX in C#, VB.NET, ASP.NET
- Overview
- Examples
- Guideline
- Support
- What's New
- Live Demo
Spire.Presentation for .NET is a professional PowerPoint® compatible API that enables developers to create, read, write, modify, convert and Print PowerPoint documents on any .NET platform ( Target .NET Framework, .NET Core, .NET Standard, .NET 5.0, .NET 6.0, Xamarin & Mono Android ). As an independent PowerPoint .NET API, Spire.Presentation for .NET doesn't need Microsoft PowerPoint to be installed on machines.
Spire.Presentation for .NET supports PPT, PPS, PPTX and PPSX presentation formats. It provides functions such as managing text, image, shapes, tables, animations, audio and video on slides. It also supports exporting presentation slides to EMF, JPG, TIFF, PDF, XPS, SVG, HTML format etc.
-
Convert
-
Master
-
Watermark
-
Extract
-
eSign
-
Chart
-
SmartArt
-
Graphic
-
Note
-
Animation
Convert PowerPoint to PDF
Converting PowerPoint to PDF helps you maintain the layout and formatting of your presentation when viewed on different systems or devices.
Create Slide Masters
A slide master controls the design of all the slides based on it. Using a slide master makes it easier to create presentations that look consistent and visually appealing.
Add a Watermark
Watermarks are used to declare confidentiality, copyright, source, or other attributes of the document, or as a decoration to make the document more attractive. Both text watermarks and image watermarks can be added to presentations.
Extract Text and Images
If you only need the text and images of a PowerPoint document regardless of their formatting and layout, you can directly extract them from the document.
Digitally Sign PowerPoint Documents
A digital signature provides assurances about the validity and authenticity of your presentation. Once a PowerPoint document is digitally signed, any changes to the document will invalidate the signature.
Insert Charts
Charts in PowerPoint can help illustrate data, show trends or changes in data over time, and make the whole document more professional and attractive.
Insert a SmartArt
SmartArt is a way to combine text, shapes and colors into an image or illustration. SmartArt graphics let you easily create a visual representation of your information.
Insert Images and Shapes
Adding pictures and shapes can make your presentations more interesting and engaging. And you can customize your images by cropping, reordering, changing colors or adding other formatting and customize shape according to your own color palette, preferences.
Add Speaker Notes
Adding speaker notes to a PowerPoint presentation provides reference material for the speaker when they’re presenting a slideshow, allowing them to stay on track without forgetting the key points to deliver a flawless presentation.
Set Animations on Shapes in PowerPoint
Animation is a great way to emphasize important points, to control the flow of information, and to increase viewer interest in your presentation. You can animate almost every objects in PowerPoint slide to give them visual effects.
.NET
Standalone .NET API
100% independent .NET PowerPoint API which
doesn't require Microsoft PowerPoint to be installed on system.
VERSION
- PPT - PowerPoint Presentation 97-2003
- PPS - PowerPoint SlideShow 97-2003
- PPTX - PowerPoint Presentation 2007/2010/2013/2016/2019
- PPSX - PowerPoint SlideShow 2007, 2010
OPERATION
Powerful Toolset, Multichannel Support
-
Work with PowerPoint Charts
-
Print PowerPoint Presentations
-
Work with SmartArt
-
Images and Shapes
-
Audio and Video
-
Protect Presentation Slides
-
Text and Image Watermark
-
Merge Split PowerPoint Document
-
Comments and Notes
-
Manage PowerPoint Tables
-
Set Animations on Shapes
-
Manage Hyperlink
-
Extract Text and Image
-
Replace Text
CONVERSION
Conversion File Documents with High Quality
-
PDF
-
HTML
-
XPS
-
SVG
-
Image
PowerPoint Document
-
PNG
-
BMP
-
JPEG
-
EMF
-
TIFF
MAIN FUNCTION
Only Spire.Presentation, No Microsoft PowerPoint Automation
As an independent PowerPoint .NET API, Spire.Presentation for .NET doesn't need Microsoft PowerPoint installed on the machine. And it is compatible with other .NET applications.Support File Formats
Spire.Presentation for .NET supports Microsoft PowerPoint 97-2003 and Microsoft PowerPoint 2007, 2010.- PPT - PowerPoint Presentation 97-2003
- PPS - PowerPoint SlideShow 97-2003
- PPTX - PowerPoint Presentation 2007, 2010, 2013, 2016 and 2019
- PPSX - PowerPoint SlideShow 2007, 2010
Platforms Supported
By using Spire.Presentation, developers can build any type of a 32-bit or 64-bit .NET application including ASP.NET, Web Services, WinForms, Xamarin and Mono Android, to create and handle PowerPoint documents.Pro Edition $799
Spire.Presentation for .NET supports PPT, PPS, PPTX and PPSX presentation formats.
Free Edition $0
Free version is limited to 10 presentation slides. This limitation is enforced during reading or writing PPT, PPTX. When converting PowerPoint files to PDF, you can only get the first 3 pages of PDF file.
GET STARTED
Free Trials for All Progress Solutions
Request free customized demo just for you. |
Beginners Guide is the first step towards learning the basic information of Spire.Presentation for .NET |
Program Guide lists the detailed features of our Spire.Presentation for .NET and you can search for the information you want. |
The Videos give an operation guide by video. You can check the produce step by step. |
|||||||||||
We guarantee one business day Forum questions Reply. |
We guarantee one business day E-mail response. |
Free Customized service for OEM Users. |
|||||||||||
Skype name: iceblue.support |
Apply for a Free Trial License File. |
||||||||||||
- It relates to our components stored on E-iceblue online store.
- It costs less than 2 hours for us to complete it. If it costs more than 2 hours, please contact our sales@e-iceblue.com
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.
Hot Fix Version: 9.3.4
Category | ID | Description |
New feature | SPIREPPT-2445 | Support retrieving the default font styles of a PowerPoint document.
Presentation presentation = new Presentation(); presentation.LoadFromFile(inputFile); IAutoShape shape = presentation.Slides[0].Shapes[0] as IAutoShape; DefaultTextRangeProperties format = shape.TextFrame.Paragraphs[0].TextRanges[0].DisPlayFormat; File.AppendAllText(outputFile, "text :" + shape.TextFrame.Paragraphs[0].TextRanges[0].Text + "\r "); File.AppendAllText(outputFile, "is bold :" + format.IsBold + "\r "); File.AppendAllText(outputFile, "is italic :" + format.IsItalic + "\r "); |
New feature | SPIREPPT-2451 | Adds SaveToSvgOption for settings PPTX to SVG conversion options.
Presentation ppt = new Presentation(); ppt.LoadFromFile(inputFile); ppt.SaveToSvgOption.SaveUnderlineAsDecoration = true; byte[] svgByte = ppt.Slides[0].Shapes[0].SaveAsSvgInSlide(); FileStream fs = new FileStream(outputFile + "1.svg", FileMode.Create); fs.Write(svgByte, 0, svgByte.Length); fs.Close(); |
New feature | SPIREPPT-2459 | Adds the showMasterShapes property to the ILayout class to display background shapes.
Presentation presentation = new Presentation(); presentation.LoadFromFile(@"in.pptx"); bool showMasterShape = presentation.Slides[1].Layout.ShowMasterShapes; |
Bug | SPIREPPT-2443 | Fixes the issue that the gradient color was incorrect when converting PPTX to SVG. |
Bug | SPIREPPT-2452 | Fixes the issue that the image quality degraded when converting PPTX to PDF. |
Bug | SPIREPPT-2453 | Fixes the issue that the text space was lost when converting shape to SVG. |
Bug | SPIREPPT-2454 | Fixes the issue that the content was incorrect when loading and saving PPTX documents. |
Hot Fix Version: 9.3.0
Function | API |
Text polishing | public string Polish(IShape shape,string language); |
Translation | public string Translate(ISlide slide, string language); |
Summarization | public string Summarize(IShape shape, string language); |
Presentation generation | public Presentation Generate(string describe, string language, bool genareteBackGroundImage); |
Questioning | public string Ask(string question, bool enableHistory = false); |
Document search | public string DocumentSearch(string question, string file_server_path, bool enableHistory = false); |
Image generation | public Stream ImageGenerate(string description); |
Hot Fix Version: 9.1.5
Category | ID | Description |
New feature | - | Support embedding fonts in PPTX: only supports embedding fonts into PPTX format, and does not support embedding into PDF and PowerPoint 2003 formats; when embedding Chinese name fonts, the font names are not displayed in Chinese.
ppt.AddEmbeddedFont(string fontpath); |
New feature | SPIREPPT-2424 | Provides the IsHidden property to determine whether the Ole object is hidden.
OleObjectCollection oles = ppt.Slides[0].OleObjects; OleObject ole= oles[0]; bool result=ole.IsHidden; |
Bug | SPIREPPT-2418 | Fixes the issue that the program threw "Microsoft PowerPoint 2007 file is corrpt." exception when loading a PPTX file when the system regional language was set to Turkish. |
Bug | SPIREPPT-2396 | Fixes the issue that the effect was incorrect after changing the chart label position. |
Hot Fix Version: 9.1
Category | ID | Description | |
Adjustment | - | Upgrades the VS2019 project framework to version 4.6.2. | |
Adjustment | - | Removes MonoAndroid and Xamarin.iOS. | |
Adjustment | - | Removes the reference of Spire.Pdf.dll from the product. | |
Adjustment | - | "Spire.Pdf.PdfConformanceLevel" has been deprecated and replaced with the new interface "Spire.Presentation.External.pdf.PdfConformanceLevel".
presentation.SaveToPdfOption.PdfConformanceLevel = Spire.Presentation.External.Pdf.PdfConformanceLevel.Pdf_A1A; |
|
Adjustment | - | "Spire.Pdf.Sercurity.PdfSecurity" has been deprecated and replaced with the new interface "Spire.Presentation.External.Pdf.PdfSecurity". |
Category | ID | Description |
New feature | SPIREPPT-2397 | Supports converting master pages to images.
Presentation ppt = new Presentation(); ppt.LoadFromFile("1.pptx"); for (int i = 0; i < ppt.Masters[0].Layouts.Count; i++) { Image image = ppt.Masters[0].Layouts[i].SaveAsImage(); String fileName = String.Format("{0}.png", i); image.Save(fileName, System.Drawing.Imaging.ImageFormat.Png); } ppt.Dispose(); |
Bug | SPIREPPT-2394 | Fixes the issue that the content layout was incorrect when converting PPT to PDF. |
Bug | SPIREPPT-2396 | Fixes the issue that the effect was incorrect after changing the position of chart labels. |
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. |
Request free customized demo just for you. |
Tab 1
Upload
Convert to
Tab 2
Upload
Convert to
Tab 3
Add text
Text: | |
Font: | |
Font Size: | |
Color: | |
downloads
|
Add image
Image: |
Click here to browse files
|
downloads
|
Tab 4
Set text watermark
Text: | |
Font: | |
Font Size: | |
Color: | |
Rotate: | |
downloads
|
Set image watermark
Image: |
Click here to browse files
|
downloads
|
Tab 5
Data
salesPers | saleAmt | comPct | comAmt |
Joe | 250 | 150 | 99 |
Robert | 270 | 150 | 99 |
Michelle | 310 | 120 | 49 |
Erich | 330 | 120 | 49 |
Dafna | 360 | 150 | 141 |
Rob | 380 | 150 | 135 |
Option
If you don't find the function you want, please fill in a form to request a free demo from us. Make sure the demo you want meets the following requirements:
- It is a small project that implements a particular scenario.
- It relates to our libraries stored on E-iceblue online store.
- It costs less than 2 hours for us to complete it.
- It is not a bug report.
- It is not a feature request.