« text-align: justify で日本語テキストも両端揃えにしたい! | メイン | EPUB次期仕様策定の札幌会議に参加しました »

EPUB仕様の日本語組版拡張案のためのメモ

6月1日に「EPUB仕様の日本語組版拡張を目指して(Version 0.8)」を試案として公開しました。

この試案の主な点は、縦書きの指定に CSS3 の writing-mode プロパティを使うことと、W3C内で議論されている margin-before/after/start/end など論理的プロパティを採用するということでした。

しかしその後、W3C での議論や、縦書き対応EPUBビューアなどを実装している側の意見を聞いて、この方針は無理があったと感じています。
(参考:「EPUB や CSS と日本語レイアウト、HTML5 と電子書籍」にも書きました)

そこで新たな試案を作成したいと思っているのですが、以下は、そのための私的メモです。

組み方向と綴じ方向の指定(OPFパッケージ文書に)

組み方向と綴じ方向の指定はCSSで指定するのではなく、OPFパッケージ文書に属性として指定するのがよいと思います。そのメリットは、未完成のCSS3仕様に依存しないこと、ビューア実装にとってはOPFにアクセスするだけで組み方向と綴じ方向が分かれば、それによりUIを変えるなどができるということです。

組み方向の指定: text-direction 属性

値:auto | ltr | rtl | ttb-rtl | ttb-ltr
デフォルト:auto
auto
ビューア側で横書きにも縦書きにもできる
ltr
左から右への横書き(英語、横書きの日本語など)
rtl
右から左への横書き(アラビア語、ヘブライ語など)
ttb-rtl
縦書き(top-to-bottom)で行は右から左(縦書きの日本語など)
ttb-ltr
縦書き(top-to-bottom)で行は左から右(モンゴル文字のモンゴル語など)

ページ綴じ方向: binding-direction 属性

値:auto | ltr | rtl
デフォルト:auto
auto
組み方向により自動的に綴じ方向が決まる
ltr
左から右へ
rtl
右から左へ

OPFのどの要素に指定?

OPFのどの要素にこれらの属性を指定するべきかは、検討が必要です。この試案で参考にしているSONY&TOPPANの案では、spine 要素に binding-direction 属性を指定するものでした。

本全体の組み方向・綴じ方向だけではなく、本の一部分だけ組み方向・綴じ方向を変える指定もできるべきです。次のいずれかの案が考えられます:

案その1: 本全体への指定は spine 要素に、本の一部への指定は spine の子要素である itemref 要素に

案その2: 本全体への指定は manifest 要素に、本の一部への指定は manifest の子要素である item 要素に

縦書きの中での部分的な横書き

縦書きの行の中で数字を縦中横にしたり、表や図のキャプションなどを横書きにする指定が必要です。次のいずれかの案が考えられます:

案その1: XHTML の dir 属性を使う。dir="ltr" または dir="rtl" が指定された要素は横書きにする。

例: 縦中横<span dir="ltr">22</span>年
<table dir="ltr">...

案その2: 縦書きの中で横書きを指定するための class 名を定義する。例えば:

例: 縦中横<span class="idpf-horizontal">22</span>年
<table class="idpf-horizontal">...

圏点

CSS3 Text ドラフトには text-emphasis プロパティがあります。しかし、この CSS3 仕様が標準となるのもまだ時間を要します。

考えられるひとつの案として、青空文庫のXHTML形式で採用されているような class 名を使うというものがあります。

参考:「青空文庫 組版案内:強調」 <em class="sesame_dot">傍点</em> <em class="white_sesame_dot">白ゴマ傍点</em> <em class="black_circle">丸傍点</em> <em class="white_circle">白丸傍点</em> <em class="black_up-pointing_triangle">黒三角傍点</em> <em class="white_up-pointing_triangle">白三角傍点</em> <em class="bullseye">二重丸傍点</em> <em class="fisheye">蛇の目傍点</em> この青空文庫形式を参考に、IDPF EPUB 用に class="idpf-emphasis-sesame-dot" などとするとよいかもしれません。

追記(2010-08-09)

「ページ綴じ方向: binding-direction 属性」については、「ページ進行方向: page-progression-direction 属性」と呼ぶ方が適切であると意見をもらっていて、札幌会議でのプレゼンではそのように直しています。

トラックバック

このエントリーのトラックバックURL:
http://blog.antenna.co.jp/PDFTool/mt-tbng2.cgi/1496

コメント (2)

小熊善之:

貝多羅じゃないけど、上下綴じってのはなくていいんでしょうか。

murakami:

たしかに上下綴じも必要かもしれません。提案してみようと思います。

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

About

2010年07月24日 15:51に投稿されたエントリーのページです。

ひとつ前の投稿は「text-align: justify で日本語テキストも両端揃えにしたい!」です。

次の投稿は「EPUB次期仕様策定の札幌会議に参加しました」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Twitter