APIまとめ:ONLYOFFICE Docsの最新アップデート
カスタマイズオプションの更新からSDKやAI駆動のマクロ生成まで、これらのアップデートはあらゆる開発者とインテグレータの生産性と創造性を高めることを目的としています。以下は新機能の詳細な内訳です。
Docs統合における新機能
ONLYOFFICEエディタを独自のアプリやサービスに統合するためのSDKをアップデートしました。最新のJavaおよびPHP SDKにはフォーマットサポートの強化、新しい構成オプション、そして新規のビューアタイプ「Diagram」が追加されています。詳しく見ていきましょう。
Java SDK 1.6.0
最新版のJava SDKはMaven Centralで公開中で、以下を提供します:
- 新ビューアタイプ:Diagram。エディタ9.0で導入されたONLYOFFICE Diagramビューアを初期化可能になりました。
- 新しい構成フィールド。エディタ9.0に対応し、初期化時の制御がさらに細かくなりました。
- サポートフォーマットリストの更新。最新の文書、スプレッドシート、プレゼンテーション、フォーム、ダイアグラムファイルタイプに対応しています。
- 依存関係の更新。既知の脆弱性を含むコンポーネントをすべてアップデートし、セキュリティと安定性を向上させました。
PHP SDK 1.3.0
最新版のPHP SDKはPackagistで公開中で、以下をサポートします:
- 新ビューアタイプ:Diagram。フローチャートやマインドマップに最適なONLYOFFICE Diagramビューアを統合できます。
- ファイル形式.odgと.mdのビューイングサポート。オープンフォーマットとMarkdownファイルの互換性が拡大しました。
- xlsbファイルの編集サポート。Excelバイナリワークブックの編集機能を統合できます。
- 新規空ファイルテンプレート。言語 Catalan(ca-ES)、Czech(cs-CZ)、Danish(da-DK)、Hungarian(hu-HU)、Indonesian(id-ID)、Romanian(ro-RO)、Albanian(sq-AL)、Urdu(ur-PK) が追加されました。
- 最小対応エディタバージョン:8.0。完全な互換性のためにONLYOFFICE Docsインスタンスを最新にしてください。
すべての開発者の皆様に、これらの新機能を活用しONLYOFFICE Docs 8.0以上との互換性を維持するために最新SDKへの更新を推奨します。
Docs APIの新機能
カスタマイズFAQの追加。よくある質問にさらに回答を追加し、あまり知られていないカスタマイズオプションについて解説しています。
New Office API examples。多様なユースケースをサポートするため、新しいドキュメント作成サンプルを導入しました。
- 2列レイアウト。パンフレットやレポートのようなプロ仕様ドキュメントを簡単に生成します。
- 横向きレイアウト。幅広い表やグラフに最適な横向きページを作成します。
- テキスト透かし。「Confidential」などの半透明透かしを自動挿入し、ドキュメントのセキュリティを維持します。
- イベント招待状。既定の寸法とカスタムメッセージで招待状をデザインします。
プラグインとマクロの新機能
マクロカスタマイズの更新。バージョン9.0.3ではcustomization.macros
パラメータの動作を改善しました。macros:false
を設定するとマクロ機能が完全に無効化され、ユーザーはマクロを実行・追加・編集できず、Viewタブからマクロボタンが非表示になります。
const config = {
editorConfig: {
customization: {
…
macros:false,
…
}
}
};
AI駆動のマクロ生成。AIを用いたマクロ開発により、手作業の手間を大幅に削減できます。バージョン9.0以降、AIプラグインはテキスト記述からマクロテンプレートを生成可能です。詳しくはこちら
さらに、VBAコードをONLYOFFICE JavaScriptベースのマクロに自動変換できます。
以下はAIで変換したVBAマクロの例です:
- セルの結合をすべて解除。スプレッドシートの結合を一括で解除します。
- 数式を値に変換。動的計算結果を静的データに変換します。
- セルの値を変更。特定セルのカスタマイズを自動化します。
選択セルの値を変更するマクロの例:
(function(){
// Get the active sheet
var activeSheet = Api.GetActiveSheet();
// Select cell A1
activeSheet.GetRange("A1").Select();
// Set the value of the selected cell to "Hello World"
activeSheet.GetRange("A1").SetValue("Hello World");
})();
非同期計算。関数内部で任意のリクエストを処理できる非同期カスタム関数を追加できます。世界銀行指標計算のサンプルをご覧ください。
新しいマクロサンプル。PDFエディタやプレゼンテーションエディタ、スプレッドシートエディタ向けの様々なサンプルを追加しました。実行方法もご確認ください。
- フィールドを自動入力
- テキストフィールドを自動調整
- 計算を挿入
- 文字数を制限
- リスト値を修正
- デフォルト値を削除
- プレースホルダーを設定
- 箇条書きを太字に
- アウトラインを生成
- 重複スライドを削除
- スライドを削除
- 無効なメールアドレスを検索
プレースホルダー設定マクロの例コード:
(function () {
let key="MyKey";
let placeholderText="Placeholder";
let doc=Api.GetDocument();
doc.GetAllForms()
.filter(field=>field.GetFormType()==="comboBoxForm"&&field.GetFormKey()===key)
.forEach(field=>field.SetPlaceholderText(placeholderText));
})();
ONLYOFFICEの無料アカウントを登録する
オンラインでドキュメント、スプレッドシート、スライド、フォーム、PDFファイルの閲覧、編集、共同作業