ファイル形式

RTF - リッチテキストフォーマット

RTF は、バイナリデータではなく読み取り可能なマークアップとして書式付きテキストを保存します。これはワープロソフト間でかつて使われていた最も共通の形式であり、今でもあらゆる環境で動作します。

.rtf

RTF は Rich Text Format の略です。Microsoft が 1987 年に発表した形式で、共通点のないさまざまなプログラム間で書式付き文書をやり取りするために作られました。その結果は非常に成功し、ほぼすべてのワープロソフトが今でも RTF を読み取ることができます。プレーンテキストには書式がなく、DOC には Microsoft 以外には正確に解読できない書式情報が含まれていましたが、RTF ではその書式が公開仕様として扱われています。

RTF が書式を保存する仕組み

RTF ファイルはプレーンテキストです。テキストエディタで開くと、自分が書いた文字と、その周りの指示を両方読むことができます。なぜなら、書式は 制御語(control words) として表現されているからです。バックスラッシュから始まるコマンドがテキスト内に混在しています。\b で太字を有効にし、\b0 で無効にします。\i は斜体に対して同じ動きをし、\par は段落の終わり、\fs24 はフォントサイズを 1/2 ポイント単位で指定するので、24 は 12 ポイントを意味します。フォントと色はファイルの先頭にあるテーブルで宣言され、その後は番号で参照されます。

この「見えやすさ」は、形式としての強みであると同時に弱点でもあります。部分的に壊れた RTF でも、手作業で修復できることが多く、制御語の半分しか理解しないアプリでも、テキストと一部の書式は表示されます。一方で、画像は圧縮バイナリではなく長い 16 進文字列として埋め込まれるため、写真を数枚含むだけで RTF ファイルは非常に巨大になり、同じ文書を DOCX で保存した場合の数倍のサイズになるのが普通です。

この形式にはどこにも圧縮がなく、ZIP 形式のラッパーもありません。堅牢さと引き換えに、ファイルサイズが大きくなります。

RTF が保持するメタデータ

RTF には任意の情報グループがあり、ファイルの先頭付近に \info として記述されます。これは DOC や DOCX と比べて控えめな内容です。アプリがこの情報を埋めると、\title、\subject、\author、\keywords、コメント用の \doccomm、最後に文書を編集したユーザーのための \operator などが含まれることがあります。

日付は構造化されたグループとして表現されます。作成日時には \creatim、最終更新日時には \revtim が使われ、それぞれ年・月・日・時・分が別々の制御語で記述されます。通常は \vern でバージョン番号、\edmins で編集時間(分単位)、\nofpages でページ数も含まれます。

このメタデータが珍しいのには 2 つ理由があります。1 つ目は任意であることです。情報グループをまったく持たない RTF ファイルも多く、その場合はメタデータレポートがほとんど空で返ってきても正しい結果といえます。2 つ目は、ファイル自体を読めることです。テキストエディタで文書を開けば、何が書かれているかを自分で確認できます。これは、ほかの書式付き文書形式では当てはまりません。

RTF を使うべき場面

RTF は、どの環境で開かれるか予測できない場合に、書式付きテキストを共有したいときに使用してください。古いマシン、最小限のエディタ、オフィススイートがインストールされていないシステムなどが該当します。文書のほとんどがテキストで、受信者が確実に開ける形式にしたい場合の交換用フォーマットとしても適しています。

画像が多い文書には使用しないでください。ファイルサイズが極端に大きくなります。また、複雑なレイアウトの文書にも向きません。RTF ではうまく表現できません。日常的な編集には、あらゆる点で DOCX や ODT の方が優れています。完成した文書として配布する場合は、PDF に書き出してください。