
ユニバーサルネットワークオブジェクト(UNO)は、OpenOffice.orgおよびLibreOfficeといったコンピュータソフトウェアアプリケーションスイートで使用されるコンポーネントモデルです。インターフェースベースであり、単一マシン上、LAN内、またはインターネット経由で、 異なるプログラミング言語、オブジェクトモデル、マシンアーキテクチャ間の相互運用性を実現するように設計されています。
ユーザーは、言語バインディングが存在する任意のプログラミング言語から、UNOコンポーネントを実装またはアクセスできます。C ++(コンパイラ依存)、Java、Object REXX、Python、Tclには、完全なUNO言語バインディングが存在します。StarOffice Basic、OLEオートメーション、.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 ]
- 新しいコンポーネントをLibreOfficeに登録します。これはツールを使用して実行できます
unopkg。 - 新しいコンポーネントをサービスとして統合します。ProtocolHandler および JobDispatch サービスが役立ちます。
- ユーザーインターフェース(メニューまたはツールバー)を変更します。変更内容を記述したXMLテキストファイルを作成することで、ほぼ自動的に変更できます。
アプリケーション例: jOpenDocument [ 6 ]
参考文献
- ^ Loeschky, Dieter; Shanmugam Senthil (2001). 「Officeアプリケーション向けユニバーサルI18nフレームワーク:技術概要」(PDF) . Palo Alto: Sun Microsystems. pp. 1–26 [8] . 2010年5月18日閲覧。
- ^ 「Docvert - Office to Open Standards」 holloway.co.nz . Bronwyn Holloway-Smith . 2014年9月20日閲覧。
- ^ "JODConverter" . jodconverter.com . 2017年9月5日閲覧。
- ^ 「DAG: unoconv: OpenOfficeでサポートされているあらゆるドキュメント形式間の変換」 Dag Wieërs . 2014年9月20日閲覧。
- ^ a b「新しいUNOコンポーネントの統合」 。 2014年9月20日閲覧。
- ^ 「jOpenDocumentホームページ。オープンドキュメントライブラリ」 。 2014年9月20日閲覧。
外部リンク
- アパッチ オープンオフィス
- リブレオフィス
- 言語ブリッジ(Java および Python ネイティブ)
- オブジェクト REXX 用の UNO
- PHP用UNO(C++で記述)Wayback Machineで2016年3月4日にアーカイブ
- FreePascal/Delphi 用の UNO は孤立している可能性があります