OOoは、主にC++でプログラミングされており、一部にはJavaが使われている。多くの技術的な特徴を持っているが、ここでは、次の3つを挙げた。これらの特徴は、OOo 2.0で新しく実装されたものではなく、バージョン1.0でも備わっているものだ。
OOoのファイルフォーマットは、XML(eXtensible Markup Language)に基づいて定義されており、このデータをzipアーカイブしたものとなっている。
ワープロの文書データだけでなく、表計算や図形描画も同じ形式になっている。そのため、文書中の表と表計算は、同じXML構造を持っている。設定ファイルなども、同じくXML+zip形式になっている。そのために、外部プログラムにより、文書ファイルや設定ファイルを解凍してから、内容を参照したり、データを書き換えることが可能だ。文字コードとしては、Unicodeを採用しており、多くの言語に対応している。フォントとインプットメソッドを用意すれば、日本語版で中国語や韓国語などを扱える。さらに、このファイルフォーマットを元にOASIS OpenDocumentという標準規格が策定されており、OOo2.0からは、このファイルフォーマットに対応している(関連リンク)、(関連リンク)。
OOoの基本機能を提供するAPIは、UNO(Universal Network Objects)と呼ぶ独自のオブジェクト技術により実装されている。
UNOは、マルチプラットフォームで動作し、C++やJavaなど複数のプログラミング言語から利用できるものだ(関連リンク)。また、フォント置換機能により、共通のフォントを持たないプラットフォームにドキュメントファイルを持っていっても、文書の崩れを比較的小さくできる特徴を持つ。OOoの対応プラットフォームは、次のようになっている。このほかに、NetBSDやOS/2へ向けての移植も行われている。
OOoの特徴的な機能として、スタイル機能も紹介しよう。
Webページ作成の現場では、スタイルシートによってデータと書式を分離する傾向にある。同じように、OOoでは、「スタイル」機能によってデータと書式を分離し、ドキュメントを作成できるようになっている。
たとえば、論文などの長文の文書で、すべての見出しに「見出し」スタイルを設定しておけば、該当スタイルの詳細を変更するだけで、すべての見出しのデザインを変更できるわけだ。また、見出しスタイルを設定すると、アウトライン表示や目次作成も可能となる。このようなスタイルは、テキスト以外に、段落やページ、さらに表や図などにも適用される。よく似た機能はMicrosoft Wordにもあるが、ExcelやPowerPointでは利用できない。OOoでは、Writerのほか、CalcやImpressなどすべてのツール共通で利用できるのだ。
Copyright © ITmedia, Inc. All Rights Reserved.