We are excited to announce the release of Spire.PDF 9.10.2. This version supports getting the text coordinates of multi-column text in reading order, setting the HorizontalScalingFactor property for PdfStringFormat, and setting whether to allow conversion when converting the PDF with permission password. Besides, this version enhances the conversion from OFD to PDF. In addition, many known issues are fixed successfully in this version, such as the issue that the extracted table data was not formatted correctly. More details are listed below.
Here is a list of changes made in this release
| Category | ID | Description |
| New feature | SPIREPDF-6153 | Supports getting the text coordinates of multi-column text in reading order.
PdfDocument doc = new PdfDocument(); doc.LoadFromFile(input); PdfPageBase pdfPageBase = doc.Pages[0]; PdfTextFinder finder = new PdfTextFinder(pdfPageBase); finder.Options.Strategy = PdfTextStrategy.Simple; |
| New feature | SPIREPDF-6264 | Supports setting the HorizontalScalingFactor property for PdfStringFormat.
PdfDocument doc = new PdfDocument(); PdfPageBase page = doc.Pages.Add(); string text = "Please add the code picture BehindText=true to set the picture behind text"; PdfSolidBrush solidBrush = new PdfSolidBrush (new PdfRGBColor(Color.Black)); PdfStringFormat format = new PdfStringFormat(): format.HorizontalScalingFactor = 80; PdfFont font = new PdfFont(PdfFontFamily.TimesRoman, 14f, PdfFontStyle.Regular); PdfGraphicsState state = page.Canvas.Save(); page.Canvas.DrawString(text, font, solidBrush, 0, 0, format); page.Canvas.Restore(state): doc.SaveToFile(outputFile); doc.Close(); |
| New feature | SPIREPDF-6285 | Support setting whether to allow conversion when converting the PDF with permission password.
PdfDocument doc = new PdfDocument();
doc.LoadFromFile(inputFile);
doc.ConvertOptions.ApplyPermissionsOptions(true);
StringBuilder sb = new StringBuilder();
foreach (FileFormat type in Enum.GetValues(typeof(FileFormat)))
{
try
{
if (type.ToString().Equals("PDF"))
{
doc.SaveToFile(outputFile_P, type);
}
else
{
doc.SaveToFile(outputFile, type);
}
}
catch (Exception ex)
{
sb.AppendLine("save to: "+ type +" :"+ ex.Message);
}
}
File.AppendAllText(outputFile,sb.ToString());
doc.Dispose();
|
| Bug | SPIREPDF-5579 | Fixes the issue that the extracted table data was not formatted correctly. |
| Bug | SPIREPDF-6089 | Fixes the issue that the output result was incorrect after setting cell spacing for a table. |
| Bug | SPIREPDF-6244 | Fixes the issue that filling the form fields of XFA's text box failed . |
| Bug | SPIREPDF-6262 | Fixes the issue that the program threw "System.IO.IOExceptions:Stream was too long" exception when merging PDF files. |
| Bug | SPIREPDF-6268 | Fixes the issue that fonts were applied incorrectly after filling the textbox field. |
| Bug | SPIREPDF-6284 | Fixes the issue that no permission password was requested when converting PDF with permission password to Word. |
| Bug | SPIREPDF-6292 | Fixes the issue that the program threw "System.NullReferenceException" exception when converting OFD to PDF files. |
| Bug | SPIREPDF-6303 | Fixes the issue that "new PdfGoToAction(partBookmarkDest)" did not work. |
Click the link to download Spire.PDF 9.10.2:
More information of Spire.PDF new release or hotfix: