血統の森+はてな

旧はてなダイアリーの自動インポートによるアーカイブです。

縦書きHTMLに関するメモ

http://momdo.s35.xrea.com/web-html-test/vertical-text/index.htmlにまとめてみました。(2009-01-21追記)
id:momdo:20060318、id:momdo:20060320:p2あたりの補完。

writing-modeについて

Internet Explorer 5.5 における縦書きレイアウトの使用
IE5.5からCSS3の草案*1を先行実装して、IEでのみCSSを用いての縦書きが実現できるわけですが、少し調べて見たところ、XML用のスタイルシートであるXSL1.1にwritng-modeがちゃんと実装されている(http://www.w3.org/TR/xsl/#writing-mode)んですねえ。

昔作った、言語じゃないほうのrubyとか使いつつ、般若心経をwriting-modeで表示させて見たもの。
writng-modeを用いた縦書きHTML:般若心経(血統の森 web実験小屋)

CSS3で採用される縦書きのためのスタイルは、もともとXMLスタイルシートであるExtensible Stylesheet Language (XSL)の7.26 Writing-mode-related Propertiesで定義されていたものです。

とあるように、CSS3の草案はそのままXSLから輸入してきたみたい。

SVGについて

あと、SVGを使って縦書きを実現するという、トリッキーな方法も発見。
SVG図形−日本語テキスト縦書き−インターネットを楽しむ -Chiaki Komiya-
図形として処理ねぇ…見れない場合はAdobeからSVGプラグインをダウンロードしてどうぞ。手元のFirefoxなんかはなぜか自力でpluginディレクトリにファイルをコピーとかめんどっちい作業をさせられましたが。(Fxってネイティヴサポートしてなかったっけ?)

とりあえず、XMLベースでどのブラウザでも2007-11現在で安定して表示させるには、SVGを用いるのがベターな方法なのかもしれない。あまりおいしくない結論だけど、tableやpreを使って無理やり表示させるよりかはまともな解決方法だと思う。

CSS3における縦書きの動向っぽいもの

CSS Text Level 3*2から消えて久しいwriting-modeだけれども、縦書きも含めた、日本語をCSSで扱う動向についてちらっと。

日本語組版はグリッドベースで行うと言って良いのか?(8)PDF 千夜一夜
これによれば、2007-03時点でW3Cの人が日本語(東アジア圏)の組版をまるで理解していないんじゃないか、という節があって、結構前途多難だなという気もする。

日本語スタイルシート技術の検討のご紹介PDF 千夜一夜
これによると、印刷業界の人が集まって、日本語組版周りについてまとめてW3Cに提案してたりする模様。

W3Cの日本語レイアウトに関するタスク・フォース活動PDF 千夜一夜

W3Cには、I18n, XSL, SVG, CSSのワーキング・グループ合同による日本語レイアウトに関するタスクフォースがあり、このワーキング・グループの目標は、日本語文書に関するレイアウト要求を文書化し、それぞれの仕様に反映することだそうです。

タスク・フォースは、主に日本で日本語により会議を行っていますが、最終的には、英語でW3Cノートを作成することです。

現在、第一部の英語化が完成していますが、2007年11月のW3C技術総会までに資料を完成し、発表されることになっています。

ということで、近いうちに成果が発表されるんじゃないかとか何とか。
CSS3への実装はまだまだ道のりは遠いっぽ感じですね。。。

まとめ

  • 縦書きHTMLは、SVGを使うのが今のところ互換性は高そう。
  • CSS3での縦書きの実装はまだまだ先の予感。