テキストエンリッチド(Text Enriched)やリッチテキスト(Rich Text)と呼ばれる形式は、HTML(Hyper Text Markup Language)と同じく、タグを用いて表示を変更していくマークアップ言語である。これらが用いられている場合、ヘッダにおいては、「Content-Type: text/plain」に代えて、「Content-Type: text/enriched」ないし「Content-Type: text/richtext」が用いられる。enrichedとrichtextとの関係は、「<」の表示方法と改行の扱いの違いであり、大きな差異はなく、同じように扱っても問題は少ない。ちなみに、enrichedは Eudoraを開発した Qualcommが作成したもので、RFC上は Informationというカテゴリで登録されている。MSワードなどで用いられる「リッチテキスト」形式は、このいずれとも異なるので、注意。
タグは当然ながら文字修飾に関係するものばかりである。text/enrichedに関して、HTMLタグとの比較を含め、一部を紹介する。
enriched | HTML | 効果 |
---|---|---|
<BOLD> </BOLD> | <B> </B> | ボールド |
<ITALIC> </ITALIC> | <I> </I> | イタリック |
<UNDERLINE> </UNDERLINE> | <U> </U> | アンダーライン |
<SMALL> </SMALL> | <FONT SIZE="-1"> </FONT> | フォント縮小、重複すると累積的な効果をもたらす |
<BIGGER> </BIGGER> | <FONT SIZE="+1"> </FONT> | フォント拡大、重複すると累積的な効果をもたらす |
<COLOR> </COLOR> | <FONT COLOR=""> </FONT> | 文字色指定。色データは<PARAM>タグで表現される |
<PARAM> </PARAM> | ---- | 直前のタグに関するパラメータ |
ここの例以外では、右寄せや左寄せ、インデントなどが存在する。
HTMLに変換する場合に少々てこずるのは色指定のタグであろう。2つのタグを合体させねばならないことに加え、パラメータの指定が異なる。enriched(richtext)では、"FFFF,FFFF,FFFF"のように、RGBそれぞれを2バイト分の16進数で表現するのに対し、HTMLでは、"#FFFFFF"のように、全3バイトを表現しているため、これを変換する必要もある。(実際は、Netscape CommunicatorとInternet Explorerで試したところ、いずれの場合も、"FFFF,FFFF,FFFF"という表現で正しく表示された。そちらでは「赤」は赤く表示されているだろうか)
平文(text/plain)に変換するのであれば、以下のようなステップになる。
プログラミング上での注意があるとしたら、タグや特殊記号「<」や「"」を処理する際の順序であろうか。筆者のような迂闊な人間は少ないと思うが、順序を間違えると情けなくなるものだ。
これらのテキスト形式は、実際にはあまり使われていないようだ。それと言うのも、HTMLで記述してしまう方が一般的であるためである。よって、当ページの内容は、多分知らなくても良いものだ。
Protocol | Name | RFC |
---|---|---|
---- | The text/enriched MIME Content-type | 1896 |