Spire.Office for .NET

ニュース&リリース

2023-10-31

Spire.Office 8.10.2 がリリースされました

Spire.Office 8.10.2を発表できることを嬉しく思います。このバージョンでは、Spire.PDF は段組みのテキスト座標を読み取るために閲覧順序をサポートしています。Spire.DocではWordをPDFに変換する際のテキストの書式設定機能が追加されました。Spire.XLSではピボットテーブルのフィールド名をカスタマイズする機能がサポートされています。Spire.Presentationでは形状内のテキストの位置情報を取得する機能が追加されました。さらに、多くの既知の問題も修正しました。詳細は以下の内容を読んでください。

このバージョンでは、Spire.Doc,Spire.PDF,Spire.XLS,Spire.Email,Spire.DocViewer, Spire.PDFViewer,Spire.Presentation,Spire.Spreadsheet, Spire.OfficeViewer, Spire.Barcode, Spire.DataExportの最新バージョンが含まれています。

DLL Versions:
  • Spire.Doc.dll v11.10.11
  • Spire.Pdf.dll v9.10.2
  • Spire.XLS.dll v13.10.3
  • Spire.Presentation.dll v8.10.3
  • Spire.Email.dll v6.5.8
  • Spire.DocViewer.Forms.dll v8.7.3
  • Spire.PdfViewer.Forms.dll v7.12.1
  • Spire.PdfViewer.Asp.dll v7.12.1
  • Spire.Spreadsheet.dll v7.4.3
  • Spire.OfficeViewer.Forms.dll v8.10.2
  • Spire.Barcode.dll v7.2.3
  • Spire.DataExport.dll v4.9.0
  • Spire.DataExport.ResourceMgr.dll v2.1.0
ここで Spire.Office 8.10.2をダウンロードする:

このリリースで行われた変更のリストは次のとおりです

Spire.PDF

カテゴリー ID 説明
New feature SPIREPDF-6153 段組み文書のテキスト座標を読み取るためのサポートが追加されました。
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 PdfStringFormatのHorizontalScalingFactorプロパティを設定する機能が追加されました。
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 パスワード保護されたPDF文書の変換時に変換を許可するかどうかを設定する機能が追加されました。
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 抽出された表のデータフォーマットが正しくない問題が修正されました。
Bug SPIREPDF-6089 テーブルにセル間のスペースを設定した後、出力結果が正しくならない問題が修正されました。
Bug SPIREPDF-6244 XFAのテキストボックスフォームフィールドの入力が成功しない問題が修正されました。
Bug SPIREPDF-6262 PDFファイルを結合する際に「System.IO.IOExceptions: Stream was too long」という例外が発生する問題が修正されました。
Bug SPIREPDF-6268 textboxフィールドに入力後、フォントが正しく適用されない問題が修正されました。
Bug SPIREPDF-6284 パスワード保護されたPDFをWordに変換する際に、パスワードの入力を要求しない問題が修正されました。
Bug SPIREPDF-6292 OFDをPDFに変換する際に「System.NullReferenceException」という例外が発生する問題が修正されました。
Bug SPIREPDF-6303 「new PdfGoToAction(partBookmarkDest)」が機能しない問題が修正されました。

Spire.Doc

カテゴリー ID 説明
New feature - WordをPDFに変換する際のテキストの書式設定機能が追加されました(主にタイ文字とチベット文字の処理に対応)。また、.NET 4.6.2以上、.NET Core、および.NET Standardプラットフォームに対応しています。
Document doc = new Document();
doc.LoadFromFile(fileName);
doc.LayoutOptions.UseHarfBuzzTextShaper = true;
doc.SaveToFile(pdfFileName, Spire.Doc.FileFormat.PDF)
Bug SPIREDOC-9831 そのバージョンでは、WordをPDFに変換する際にタイ語の文字が整列や改行されない問題が修正されました。

Spire.XLS

カテゴリー ID 説明
New feature SPIREXLS-4907 ExcelからPDFへの変換効率が向上されました。
New feature SPIREXLS-4857 ピボットテーブルのフィールド名をカスタマイズする機能がサポートされています。
sheet.PivotTables[0].RowFields[0].CustomName = "rowName";
sheet.PivotTables[0].ColumnFields[0].CustomName = "colName";
sheet.PivotTables[0].PivotFields[0].CustomName = "fieldName1";
sheet.PivotTables[0].DataFields[0].CustomName = "dataName";
Bug SPIREXLS-4883 Excel を HTML に変換した後に画像の位置が変わる問題が修正されました。
Bug SPIREXLS-4897 削除されたコメントがドキュメントから正常に削除されない問題が修正されました。
Bug SPIREXLS-4909 Excel文書の読み込み時に、プログラムが「System.OverflowException」をスローする問題が修正されました。

Spire.Presentation

カテゴリー ID 説明
New feature SPIREPPT-2324 形状内のテキストの位置情報を取得する機能がサポートされています。
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\n" + "location:" + point.ToString());
     }
 }
 File.AppendAllText(outputFile, sb.ToString());
 ppt.Dispose();
New feature SPIREPPT-2350 形状中のテキストの "Ascent" および "Descent" 属性を取得する機能がサポートされています。
Presentation ppt = new Presentation();
ppt.LoadFromFile(inputFile);
ISlide slide = ppt.Slides[0];
IAutoShape autoshape = slide.Shapes[0] as IAutoShape;
IList lines = autoshape.TextFrame.GetLayoutLines();
for (int i = 0; i < lines.Count; i++)
{
   float ascent= lines[i].Ascent;
   float descent = lines[i].Descent;
}
New feature SPIREPPT-2365 形状からSVGへの変換がサポートされています。
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 PPTをSVGに変換した後、ブラウザでSVGファイルを開いたときに空白になっていた問題が修正されました。