ラッパーをアップグレードし、JSONとの変換を追加し、OLEオブジェクト、フォーム、ワードアート、チャート、テーブルを扱うためのオプションを追加するなど、Doc Builder APIを大幅に拡張しました。詳細は下記をご覧ください。
完全な最適化
ONLYOFFICE Doc BuilderのネイティブAPIを全面的にアップグレードし、テキストコマンドではなくJSコマンドでより快適にドキュメントを生成できるようになりました。
統合APIには、С/С++データ型をより簡単に扱えるようにする新しいクラスとメソッドが含まれています。
1 2 3 4 5 6 7 8 |
CValue oApi = oGlobal["Api"]; CValue oDocument = oApi.Call("GetDocument"); CValue oParagraph = oApi.Call("CreateParagraph"); oParagraph.Call("SetSpacingAfter", 1000, false); oParagraph.Call("AddText", "Hello, world!"); CValue oContent = oContext.CreateArray(1); oContent[0] = oParagraph; oDocument.Call("InsertContent", oContent); |
さらに、.NetベースのアプリでDoc Builder APIを操作できるようにする.Net doctrendererライブラリを追加しました。また、Javaのラッパーオプションも少しづつ追加していく予定です。
JSON 変換
新しい FromJSON と ToJSON メソッドを使うと、指定された JSON オブジェクトを、対応するタイプの Document Builder オブジェクトに変換したり、逆に、ApiDocument オブジェクトを JSON オブジェクトに変換したりすることができるようになる。これは、ハイパーリンク、パラグラフ、ナンバリング、テーブル、スライドなどの要素に適用されます。
1 2 3 4 5 6 7 |
builder.CreateFile("docx"); var oDocument = Api.GetDocument(); ..... var sJSON = oDocument.ToJSON(false, false, true, true); .... builder.SaveFile("docx", "ToJSON.docx"); builder.CloseFile(); |
OLEメソッド
Doc Builder API に ApiOleObject クラスを追加しました。例えば、CreateOleObjectメソッドで、指定されたパラメータでOLEオブジェクトを作成することができます。実用的には、テキストドキュメント、シート、スライドに埋め込まれたOLEオブジェクトとしてスプレッドシートを追加、編集することができ、スマートな統計やレポートを扱う際に便利です。
1 2 3 4 5 |
builder.CreateFile("xlsx"); var oWorksheet = Api.GetActiveSheet(); oWorksheet.AddOleObject("https://i.ytimg.com/vi_webp/SKGz4pmnpgY/sddefault.webp", 130 * 36000, 90 * 36000, "https://youtu.be/SKGz4pmnpgY", "asc.{38E022EA-AD92-45FC-B22B-49DF39746DB4}", 0, 2 * 36000, 4, 3 * 36000); builder.SaveFile("xlsx", "AddOleObject.xlsx"); builder.CloseFile(); |
新しいフォームメソッド
新しいフォームメソッドのおかげで、ドキュメント内のコンテンツコントロールやフォームに使用されているすべてのタグのリストを取得したり、指定されたタグ名を持つすべてのコンテンツコントロールやフォームのリストを取得したりすることができるようになりました。
これにより、例えばドキュメントを開かずに解析する場合など、自動モードでのフィールドの作業が簡単になります。
注釈、脚注、Word Art
1 2 3 4 5 6 7 |
builder.CreateFile("docx"); var oDocument = Api.GetDocument(); var oParagraph = oDocument.GetElement(0); oParagraph.AddText("This is just a sample text."); oDocument.AddEndnote(); builder.SaveFile("docx", "AddEndnote.docx"); builder.CloseFile(); |
また、テキスト文書、表計算、プレゼンテーションの作成時に、ワードアートオブジェクトを作成できるようになりました。
より多くのチャートと描画メソッド
新しいチャートメソッドが追加されました。
- ApplyChartStyle:スタイルIDによって現在のチャートにスタイルを設定する
- SetLegendFill:チャートの凡例に充填を設定する
- SetSeriaValues : 指定された範囲から指定されたシリーズに値を設定する
- SetTitleFill : チャートのタイトルに塗りつぶしを設定する
- などなど
更新された描画メソッドには、以下のものがあります。
- ReplaceDrawing:描画を新しいものに置き換える
- GetLockValue:現在の図面の指定されたロックタイプに対応するロック値を取得する
- SetDrawingPrFromDrawing:他の図面から現在の図面にプロパティを設定する
- その他にもいくつかの機能が追加された
その他のアップデート
UpdateAllTOC と UpdateAllTOF メソッドにより、現在のドキュメント内のすべての目次とすべての図 表を更新することができるようになりました。
テキスト文書用の新しいテーブルメソッドにより、テーブルの説明とテーブルのタイトル/キャプションを設定/取得できるようになりました。