ユニバーサルネットワークオブジェクト

UNO API

ユニバーサルネットワークオブジェクトUNO)は、OpenOffice.orgおよびLibreOfficeといったコンピュータソフトウェアアプリケーションスイートで使用されるコンポーネントモデルです。インターフェースベースであり、単一マシン上、LAN内、またはインターネット経由で、 異なるプログラミング言語、オブジェクトモデル、マシンアーキテクチャ間の相互運用性を実現するように設計されています。

ユーザーは、言語バインディングが存在する任意のプログラミング言語から、UNOコンポーネントを実装またはアクセスできます。C ++(コンパイラ依存)、JavaObject REXXPythonTclには、完全なUNO言語バインディングが存在します。StarOffice BasicOLEオートメーション.NET共通言語インフラストラクチャには、コンポーネントへのアクセスは許可するが、書き込みは許可しないバインディングが存在します。特に、このAPIはマクロで使用されます。

ユニバーサルネットワークオブジェクトはUNOランタイム環境(URE)内で動作します。[ 1 ]

UNO のApache OpenOfficeバージョンは、 Apache License (バージョン 2) の条件に基づいて、無料のオープン ソース ソフトウェアとしてリリースされています。

関数呼び出し用のUNO

例:外部プログラムは、 UNOインターフェースを介してLibreOfficeを呼び出し、 ODTファイルをPDFファイルとしてエクスポートしたり、DOCXファイルをインポートして変換したりできます。また、別の外部プログラムは、LibreOffice Calcファイルのセルと数式にアクセスできます。

アプリケーション例: Docvert[ 2 ] JODConverter[ 3 ] unoConv . [ 4 ]

アドオン用UNO

プログラマーは独自のUNOコンポーネントを作成し、OpenOffice/LibreOfficeに統合することができます。これらのコンポーネントはLibreOfficeのメニューやツールバーに追加することができ、「アドオン」と呼ばれます。[ 5 ] アドオンはLibreOfficeの機能を拡張することができます。

新しいコンポーネントの統合は、いくつかのツールとサービスによってサポートされています。主な3つのステップは次のとおりです。[ 5 ]

  1. 新しいコンポーネントをLibreOfficeに登録します。これはツールを使用して実行できますunopkg
  2. 新しいコンポーネントをサービスとして統合します。ProtocolHandler および JobDispatch サービスが役立ちます。
  3. ユーザーインターフェース(メニューまたはツールバー)を変更します。変更内容を記述したXMLテキストファイルを作成することで、ほぼ自動的に変更できます。

アプリケーション例: jOpenDocument [ 6 ]

参考文献

  1. ^ Loeschky, Dieter; Shanmugam Senthil (2001). 「Officeアプリケーション向けユニバーサルI18nフレームワーク:技術概要」(PDF) . Palo Alto: Sun Microsystems. pp. 1–26 [8] . 2010年5月18日閲覧
  2. ^ 「Docvert - Office to Open Standards」 holloway.co.nz . Bronwyn Holloway-Smith . 2014年9月20日閲覧
  3. ^ "JODConverter" . jodconverter.com . 2017年9月5日閲覧
  4. ^ 「DAG: unoconv: OpenOfficeでサポートされているあらゆるドキュメント形式間の変換」 Dag Wieërs . 2014年9月20日閲覧
  5. ^ a b「新しいUNOコンポーネントの統合」 。 2014年9月20日閲覧
  6. ^ 「jOpenDocumentホームページ。オープンドキュメントライブラリ」 。 2014年9月20日閲覧
アパッチ オープンオフィス
リブレオフィス
言語ブリッジ(Java および Python ネイティブ)