We are excited to announce the release of Spire.Office 6.10.3. This version brings some new features, for example, Spire.XLS supports multiple new charts such as Waterfall, Pareto and Histogram; Spire.PDF supports setting document properties when converting PDF to Doc/Docx; Spire.Presentation supports getting the target slide of a hyperlink. Meanwhile, a lot of bugs have been successfully fixed. More details are listed as follows.
In this version, the most recent versions of Spire.Doc, Spire.PDF, Spire.XLS, Spire.Presentation, Spire.Email, Spire.DocViewer, Spire.PDFViewer, Spire.Spreadsheet, Spire.OfficeViewer, Spire.DataExport, Spire.Barcode are included.
DLL Versions:
- Spire.Doc.dll v9.10.9
- Spire.Pdf.dll v7.10.4
- Spire.XLS.dll v11.10.5
- Spire.Email.dll v4.7.0
- Spire.DocViewer.Forms.dll v6.8.0
- Spire.PdfViewer.Forms.dll v6.9.1
- Spire.PdfViewer.Asp.dll v6.9.1
- Spire.Presentation.dll v6.10.2
- Spire.Spreadsheet v5.10.0
- Spire.OfficeViewer.Forms.dll v6.10.3
- Spire.Barcode.dll v5.9.4
- Spire.DataExport.dll v4.1.9
- Spire.DataExport.ResourceMgr.dll v2.1.0
- Spire.License.dll v1.4.0
Click the link to get the version Spire.Office 6.10.3:
More information of Spire.Office new release or hotfix:
Here is a list of changes made in this release
Spire.PDF
Category | ID | Description |
New feature | SPIREPDF-4564 | Supports setting document properties when converting PDF to Doc/Docx.
Spire.Pdf.Conversion.PdfToDocConverter doc = new Spire.Pdf.Conversion.PdfToDocConverter(inputFile); doc.DocxOptions.Title = "PDFTODOCX"; doc.DocxOptions.Subject = "Set document properties."; doc.DocxOptions.Tags = "Test Tags"; doc.DocxOptions.Categories = "PDF"; doc.DocxOptions.Commments = "This document just for testing the properties"; doc.DocxOptions.Authors = "TEST"; doc.DocxOptions.LastSavedBy = "/E-iceblue"; doc.DocxOptions.Revision = (int)7.9; doc.DocxOptions.Version = "csharp V4.0"; doc.DocxOptions.ProgramName = "Spire.Pdf for .NET"; doc.DocxOptions.Company = "E-iceblue"; doc.DocxOptions.Manager = "Test"; doc.SaveToDocx(outputFile); |
New feature | SPIREPDF-4662 | Supports creating poly line annotations.
PdfDocument pdf = new PdfDocument(); PdfPageBase page = pdf.Pages.Add(); PdfPolyLineAnnotation polyline = new PdfPolyLineAnnotation(page, new PointF[] { new PointF(0, 60), new PointF(30, 45), new PointF(60, 90), new PointF(90, 80) }); polyline.Color = Color.PaleVioletRed; polyline.Text = "This is a polygon annotation"; polyline.Author = "E-ICEBLUE"; polyline.Subject = "polygon annotation demo"; polyline.Name = "Summer"; polyline.Border = new PdfAnnotationBorder(1f); polyline.ModifiedDate = DateTime.Now; page.AnnotationsWidget.Add(polyline); pdf.SaveToFile(output); |
New feature | SPIREPDF-914 | Supports extracting table.
PdfDocument pdf = new PdfDocument(); pdf.LoadFromFile(inputPath); StringBuilder builder = new StringBuilder(); PdfTableExtractor extractor = new PdfTableExtractor(pdf); PdfTable[] tableLists = null; for (int pageIndex = 0; pageIndex 0) { foreach (PdfTable table in tableLists) { int row = table.GetRowCount(); int column = table.GetColumnCount(); for (int i = 0; i < row; i++) { for (int j = 0; j < column; j++) { string text = table.GetText(i, j); builder.Append(text + " "); } builder.Append("\r\n"); } } } } File.WriteAllText(outputFile, builder.ToString()); |
Bug | SPIREPDF-4085 | Fixes the issue that finding the specific text failed. |
Bug | SPIREPDF-4566 | Fixes the issue that the content was incorrect when adding SVG to PDF(.NET Core3.0 platform). |
Bug | SPIREPDF-4657 | Fixes the issue that the application threw an error "Parameter is invalid" when printing PDF. |
Bug | SPIREPDF-4664 | Fixes the issue that the content was incorrect when converting PDF to SVG. |
Bug | SPIREPDF-4668 | Fixes the issue that the size of file increased after adding and deleting layers. |
Bug | SPIREPDF-4689 | Fixes the issue that the content was incorrect when printing PDF. |
Bug | SPIREPDF-4692 | Fixes the issue that some columns were hidden when converting PDF to Excel and the system's regional culture is Portuguese. |
Bug | SPIREPDF-4693 SPIREPDF-4705 |
Fixes the issue that the application threw NullReferenceException when filling form fields. |
Spire.XLS
Category | ID | Description |
New feature | - | Supports Waterfall, Pareto, Histogram, BoxAndWhisker, TreeMap, SunBurst and Funnel charts.
Workbook workbook = new Workbook(); workbook.LoadFromFile("waterfall_sample.xlsx"); var sheet = workbook.Worksheets[0]; var officeChart = sheet.Charts.Add(); //Set chart type as waterfall officeChart.ChartType = ExcelChartType.WaterFall; //Set data range to the chart from the worksheet officeChart.DataRange = sheet["A2:B8"]; //Data point settings as total in chart officeChart.Series[0].DataPoints[3].SetAsTotal = true; officeChart.Series[0].DataPoints[6].SetAsTotal = true; //Showing the connector lines between data points officeChart.Series[0].Format.ShowConnectorLines = true; //Set the chart title officeChart.ChartTitle = "Company Profit (in USD)"; //Formatting data label and legend option officeChart.Series[0].DataPoints.DefaultDataPoint.DataLabels.HasValue = true; officeChart.Series[0].DataPoints.DefaultDataPoint.DataLabels.Size = 8; officeChart.Legend.Position = LegendPositionType.Right; workbook.SaveToFile("waterfall_chart.xlsx"); Workbook workbook = new Workbook(); workbook.LoadFromFile("Pareto_sample.xlsx"); var sheet = workbook.Worksheets[0]; var officeChart = sheet.Charts.Add(); //Set chart type as Pareto officeChart.ChartType = ExcelChartType.Pareto; //Set data range in the worksheet officeChart.DataRange = sheet["A2:B8"]; //Set category values as bin values officeChart.PrimaryCategoryAxis.IsBinningByCategory = true; officeChart.PrimaryCategoryAxis.OverflowBinValue = 5; officeChart.PrimaryCategoryAxis.UnderflowBinValue = 1; //Formatting Pareto line officeChart.Series[0].ParetoLineFormat.LineProperties.Color = System.Drawing.Color.Blue; //Gap width settings officeChart.Series[0].DataFormat.Options.GapWidth = 6; //Set the chart title officeChart.ChartTitle = "Expenses"; //Hiding the legend officeChart.HasLegend = false; workbook.SaveToFile("Pareto_chart.xlsx"); Workbook workbook = new Workbook(); workbook.LoadFromFile("Histogram_sample.xlsx"); var sheet = workbook.Worksheets[0]; var officeChart = sheet.Charts.Add(); //Set chart type as histogram officeChart.ChartType = ExcelChartType.Histogram; //Set data range in the worksheet officeChart.DataRange = sheet["A1:A15"]; //Category axis bin settings officeChart.PrimaryCategoryAxis.BinWidth = 8; //Gap width settings officeChart.Series[0].DataFormat.Options.GapWidth = 6; //Set the chart title and axis title officeChart.ChartTitle = "Height Data"; officeChart.PrimaryValueAxis.Title = "Number of students"; officeChart.PrimaryCategoryAxis.Title = "Height"; //Hiding the legend officeChart.HasLegend = false; workbook.SaveToFile("Histogram_chart.xlsx"); Workbook workbook = new Workbook(); workbook.LoadFromFile("Boxandwhisker_sample.xlsx"); var sheet = workbook.Worksheets[0]; var officeChart = sheet.Charts.Add(); //Set the chart title officeChart.ChartTitle = "Yearly Vehicle Sales"; //Set chart type as Box and Whisker officeChart.ChartType = ExcelChartType.BoxAndWhisker; //Set data range in the worksheet officeChart.DataRange = sheet["A1:E17"]; //Box and Whisker settings on first series var seriesA = officeChart.Series[0]; seriesA.DataFormat.ShowInnerPoints = false; seriesA.DataFormat.ShowOutlierPoints = true; seriesA.DataFormat.ShowMeanMarkers = true; seriesA.DataFormat.ShowMeanLine = false; seriesA.DataFormat.QuartileCalculationType = ExcelQuartileCalculation.ExclusiveMedian; //Box and Whisker settings on second series var seriesB = officeChart.Series[1]; seriesB.DataFormat.ShowInnerPoints = false; seriesB.DataFormat.ShowOutlierPoints = true; seriesB.DataFormat.ShowMeanMarkers = true; seriesB.DataFormat.ShowMeanLine = false; seriesB.DataFormat.QuartileCalculationType = ExcelQuartileCalculation.InclusiveMedian; //Box and Whisker settings on third series var seriesC = officeChart.Series[2]; seriesC.DataFormat.ShowInnerPoints = false; seriesC.DataFormat.ShowOutlierPoints = true; seriesC.DataFormat.ShowMeanMarkers = true; seriesC.DataFormat.ShowMeanLine = false; seriesC.DataFormat.QuartileCalculationType = ExcelQuartileCalculation.ExclusiveMedian; workbook.SaveToFile("Boxandwhisker_chart.xlsx"); Workbook workbook = new Workbook(); workbook.LoadFromFile("treemap_sample.xlsx"); var sheet = workbook.Worksheets[0]; var officeChart = sheet.Charts.Add(); //Set chart type as TreeMap officeChart.ChartType = ExcelChartType.TreeMap; //Set data range in the worksheet officeChart.DataRange = sheet["A2:C11"]; //Set the chart title officeChart.ChartTitle = "Area by countries"; //Set the Treemap label option officeChart.Series[0].DataFormat.TreeMapLabelOption = ExcelTreeMapLabelOption.Banner; //Formatting data labels officeChart.Series[0].DataPoints.DefaultDataPoint.DataLabels.Size = 8; workbook.SaveToFile("treemap_chart.xlsx"); Workbook workbook = new Workbook(); workbook.LoadFromFile("Sunburst_sample.xlsx"); var sheet = workbook.Worksheets[0]; var officeChart = sheet.Charts.Add(); //Set chart type as Sunburst officeChart.ChartType = ExcelChartType.SunBurst; //Set data range in the worksheet officeChart.DataRange = sheet["A1:D16"]; //Set the chart title officeChart.ChartTitle = "Sales by annual"; //Formatting data labels officeChart.Series[0].DataPoints.DefaultDataPoint.DataLabels.Size = 8; //Hiding the legend officeChart.HasLegend = false; workbook.SaveToFile("Sunburst_chart.xlsx"); Workbook workbook = new Workbook(); workbook.LoadFromFile("Funnel_sample.xlsx"); var sheet = workbook.Worksheets[0]; var officeChart = sheet.Charts.Add(); //Set chart type as Funnel officeChart.ChartType = ExcelChartType.Funnel; //Set data range in the worksheet officeChart.DataRange = sheet.Range["A1:B6"]; //Set the chart title officeChart.ChartTitle = "Funnel"; //Formatting the legend and data label option officeChart.HasLegend = false; officeChart.Series[0].DataPoints.DefaultDataPoint.DataLabels.HasValue = true; officeChart.Series[0].DataPoints.DefaultDataPoint.DataLabels.Size = 8; workbook.SaveToFile("Funnel_chart.xlsx"); |
Bug | SPIREXLS-3386 SPIREXLS-3470 |
Fixes the issue that the content was incorrect when converting Excel to PDF. |
Bug | SPIREXLS-3396 | Fixes the issue that the application threw an error "Invalid LegendPositionType string val" when loading an .xlsx file. |
Bug | SPIREXLS-3422 | Fixes the issue that the combination chart type was not got incorrectly. |
Bug | SPIREXLS-3425 | Fixes the issue that the application threw the System.ArgumentOutOfRangeException when copying worksheets. |
Bug | SPIREXLS-3426 | Fixes the issue that the lines lost when converting Excel to PDF. |
Bug | SPIREXLS-3438 | Fixes the issue that the application hanged when loading an .xls file. |
Bug | SPIREXLS-3449 | Fixes the issue that setting the end of the chart's error line did not work. |
Bug | SPIREXLS-3455 SPIREXLS-3460 |
Fixes the issue that the application threw an error "Cannot read that as a ZipFile" when loading an HTML file. |
Bug | SPIREXLS-3458 SPIREXLS-3472 |
Fixes the issue that the application threw an error "You cannot Write() data for an entry that is a directory" when saving to an .xlsm file. |
Bug | SPIREXLS-3459 | Fxies the issue that the application threw an error 'Invalid MsoLineDashStyle string val' when loading an .xlsx file. |
Bug | SPIREXLS-3464 | Fixes the issue that some characters lost when converting an .xlsx to PDF. |
Bug | SPIREXLS-3471 | Fixes the issue that that the application threw an error "Object reference is not set to an instance of an object." when converting an .xlsx to PDF. |
Bug | SPIREXLS-3480 | Fixes the issue that the max rows and columns obtained were wrong after adding some new data. |
Bug | SPIREXLS-3481 | Fixes the issue that the application hanged when loading an .ods file. |
Bug | SPIREXLS-3482 | Fixes the issue that setting the transparent background color of the cell did not take effect |
Spire.Doc
Category | ID | Description |
Bug | SPIREDOC-5938 | Fixes the issue that it didn't find all matches when using regular expression to find text. |
Bug | SPIREDOC-6435 | Fixes the issue that the application threw the error "ArgumentOutOfRangeException" when loading an HTML file. |
Bug | SPIREDOC-6545 SPIREDOC-6785 |
Fixes the issue that there were extra blank pages after converting Word to PDF. |
Bug | SPIREDOC-6597 | Fixes the issue that line breaks were incorrect after converting Word to PDF. |
Bug | SPIREDOC-6635 | Fixes the issue that the image position was changed after converting Word to PDF. |
Bug | SPIREDOC-6710 | Fixes the issue that the text overlapped after converting Word to PDF. |
Bug | SPIREDOC-6718 | Fixes the issue that the application threw the error "Collection was modified; enumeration operation may not execute" when comparing two Word documents. |
Bug | SPIREDOC-6746 SPIREDOC-6772 SPIREDOC-6820 |
Fixes the issue that the application threw the error "Object reference not set to an instance of an object" when converting Word to PDF. |
Bug | SPIREDOC-6771 SPIREDOC-6793 |
Fixes the issue that the application threw the error "Object reference not set to an instance of an object" when getting MergeGroupNames. |
Bug | SPIREDOC-6773 | Fixes the issue that the Thai characters were garbled after converting Word to PDF. |
Bug | SPIREDOC-6774 | Fixes the issue that the application threw the error "Zip exception" when loading a Word document. |
Spire.Presentation
Category | ID | Description |
New feature | SPIREPPT-1698 | Supports getting the target slide of a hyperlink.
Presentation ppt = new Presentation(); ppt.LoadFromFile(inputFile); IAutoShape shape = ppt.Slides[1].Shapes[0] as IAutoShape; if (shape.Click.ActionType == HyperlinkActionType.GotoSlide) { ISlide targetSlide = shape.Click.TargetSlide; Console.WriteLine("index = " + targetSlide.SlideNumber); } |
Bug | SPIREPPT-1684 | Fixes the issue that the OLE object couldn't be opened after loading and saving the file. |
Bug | SPIREPPT-1700 | Fixes the issue that the content was cut off after converting shape to images. |
Bug | SPIREPPT-1702 | Fixes the issue that it didn't get the correct text color. |
Bug | SPIREPPT-1703 | Fixes the issue that it didn't get the correct font size of the table text. |
Bug | SPIREPPT-1704 | Fixes the issue that it didn't get the correct fill color for the chart series. |
Bug | SPIREPPT-1705 | Fixes the issue that it didn't get the correct duration for the slide show transition. |
Bug | SPIREPPT-1706 | Fixes the issue that part of the content was missing after converting equations to images. |
Spire.Spreadsheet
Category | ID | Description |
Bug | SPREADSHEET-188 | Fixes the issue that the content in the file was cut when viewing Excel file |