このたび、Spire.Doc for .NET 14.1.12 のリリースをお知らせいたします。本バージョンでは、Word 文書内の指定ページや空白ページの削除、VBA マクロの作成および操作、ドキュメントから完全な変更履歴(リビジョン)情報の取得など、複数の有用な新機能が追加されました。また、全体的な安定性とパフォーマンスを向上させるため、複数の既知の問題も修正されています。詳細は以下のとおりです。
本リリースで行われた変更一覧
| カテゴリー | ID | 説明 |
| 新機能 | SPIREDOC-3929 | Word を HTML に変換する際、数式を MathML 形式に変換するための設定を追加しました。
HtmlExportOptions options = doc.HtmlExportOptions; options.OfficeMathOutputMode = HtmlOfficeMathOutputMode.MathML; |
| 新機能 | SPIREDOC-9868 | Word 文書内の 指定ページ および 空白ページ を削除する機能を追加しました。
doc.RemoveBlankPages(); // Delete blank pages doc.RemovePages(new List |
| 新機能 | SPIREDOC-11489 | Word 文書で VBA マクロの作成および操作 をサポートしました。
Document doc = new Document();
doc.AddSection().AddParagraph().AppendText("wertyuiop[]fghjk");
// Add VBA project to document
VbaProject vbaProject = new VbaProject();
vbaProject.Name = "SampleVBAMacro";
doc.VbaProject = vbaProject;
// Add modules to VBA project
// Module 1
VbaModule vbaModule1 = doc.VbaProject.Modules.Add("SampleModule1", VbaModuleType.StdModule);
vbaModule1.SourceCode = @"
Sub DocumnetInfo()
MsgBox ""create time: "" &Now()
MsgBox ""Pages:"" & ActiveDocument.Range.ComputeStatistics(wdStatisticPages)
End Sub
Sub WriteHello()
Selection.TypeText Text:=""Hello World!""
End Sub";
// Module 2
VbaModule vbaModule2 = doc.VbaProject.Modules.Add("SampleModule2", VbaModuleType.StdModule);
vbaModule2.SourceCode = @"
Sub InsertCurrentDate()
Selection.TypeText Text:=Format(Now(),""yyyy-mm-dd hh:mm:ss"")
End Sub
Sub IndentParagraph()
Selection.ParagraphFormat.LeftIndent = InchesToPoints(0.5)
End Sub";
doc.SaveToFile("result.docm", FileFormat.Docm);
doc.Close(); |
| 新機能 | SPIREDOC-11598 | ドキュメントから 完全な変更履歴(リビジョン)情報 を取得するための GetRevisionInfos() メソッドを追加しました。
Document doc = new Document();
doc.LoadFromFile("input.docx");
StringBuilder sb = new StringBuilder();
RevisionInfoCollection revisionInfoCollection = doc.GetRevisionInfos();
foreach (RevisionInfo revisionInfo in revisionInfoCollection)
{
sb.AppendLine("[author]:" + revisionInfo.Author + "\r\n" + " [RevisionType]:" + revisionInfo.RevisionType + "\r\n" + " [DateTime]:" + revisionInfo.DateTime.ToString() + "\r\n" + " [OwnerObject]:" + revisionInfo.OwnerObject + "\r\n" + " [OwnerObject.Owner]:" + revisionInfo.OwnerObject.Owner + "\r\n");
if (revisionInfo.OwnerObject is TextRange textRange)
{
TextRange range = (TextRange)textRange;
sb.AppendLine($"TextRange - Content:{range.Text}");
}
}
File.WriteAllText(outputFile, sb.ToString());
doc.Dispose(); |
| 不具合修正 | SPIREDOC-11523 | Word を PDF に変換する際に プログラムが停止(ハング)する問題 を修正しました。 |
| 不具合修正 | SPIREDOC-11632 | 複数行の透かしを追加した際に 改行が正しく処理されない問題 を修正しました。 |
| 不具合修正 | SPIREDOC-11692 | 目次フィールドが更新されない問題 を修正しました。 |
| 不具合修正 | SPIREDOC-11703 | Markdown を Word に変換する際に結果が正しくならない問題 を修正しました。 |
| 不具合修正 | SPIREDOC-11706 | \r\n を含む複数行テキストを追加した際に ドキュメントの保存に時間がかかる問題 を修正しました。 |
| 不具合修正 | SPIREDOC-11727 | HTML を Word に追加した際に 余分な空白段落が生成される問題 を修正しました。 |
| 不具合修正 | SPIREDOC-11744 | Word を HTML に変換した際に 画像がぼやける問題 を修正しました。 |
| 不具合修正 | SPIREDOC-11767 | RTF ファイルの読み込みおよび保存時に 内容が不整合になる問題 を修正しました。 |
以下のリンクから Spire.Doc 14.1.12 をダウンロードできます:






