2002-06-24 87933 [長年日記]

プロポーショナルフォントとHTMLメール

海外のMLなんかだと結構平気でHTMLメールが流れたりしますが、なんかわかるような気もします。英語などのアルファベットの場合、固定ピッチでみるとちょっと見づらいですが、プロポーショナルで見ると文字数単位で折り返すと右端ががたがたになってしまって見難いという問題があります。なんかそれだけでもHTMLメールにしてしまえっていう人の気分がわからなくもないような。

さらに、折り返しと引用も考えるとさらに納得がいく気がします。適当な文字数で改行を入れておくのが普通になっている理由は、

  1. ある桁以上の行が見れない端末への考慮
  2. 引用したときに行頭ごとに引用マークが入れられるように
  3. 一行があまりにも長くなるとSMTPで送れなくなるので

くらいが主な理由だと思うんですが、1はいまとなっては考慮しなくてもいい気がします。3は考慮しなくてはいけませんが、いざとなればBase64なりQuoted-Printableでエンコードすればいいです。でも、2はそうはいきませんね。しかし、上に書いた理由から文字数単位で折り返したくはないわけです。そこでHTMLメールなら、引用は<blockquote>でするようにすれば改行が入っていようがいまいが関係ないということになります。なので、さらにアルファベット圏でHTMLメールが使われる理由がわかる気がします。

そもそも論理的に改行していないところに物理的な改行を入れてしまえという発想が既に時代遅れなんでしょうね。今のHTMLはその程度の要求を満たすにはオーバースペック過ぎるように感じますけれど。ソースを直に読んでもタグを気にせずに読めるくらいならいいんですが。

テキスト表示

結局のところ、折り返し幅は指定された文字数×平均文字幅(指定されていない場合ウィンドウの幅)、タブストップも指定された文字数×平均文字幅で計算することにしました。プロポーショナルでも固定ピッチでも同じアルゴリズムで計算します。

固定ピッチならば、全ての文字が平均文字幅に等しくなる(いわゆる全角は2倍になる)と想定できるので、今までと同じになるはずです。