2014/05/13
先日公開されたグループ「電書ラボ」のWebページにて、「電書ラボEPUB制作仕様」が公開されました。
「電書ラボEPUB制作仕様」に関する基本的な概要は電書ラボサイトの紹介文を見ていただくとして、作成に関与した者として、ここではもう少し突っ込んでこの仕様の性格と狙いを書いておこうと思います。
電書協ガイドのサブセット
まず、この仕様は電書協ガイドのサブセットとして作成したものです。「電書協EPUB 3 制作ガイド」(以下電書協ガイド)およびそのサブセットについての解説は、先日ITmediaに掲載された@lost_and_found氏の記事が参考になるでしょう。
多少補足をしておくとすれば、電書協ガイドおよびそのサブセットは「量産ラインのためのもの」であるという点です。今後、出版社ベースの電子書籍の制作は大きく分けて「紙の書籍の内容をほぼそのまま電子化するもの」と、「デザイナーが関与して企画から作り起こすもの」に2分化されていくものと思いますが、電書協ガイドはこのうちの前者のためにあるものと思います。近い将来に期待される「新刊全点電子化」といった流れのためには、必然的にこうしたガイドラインが必要だったとも言えるでしょう。全点電子化の1点1点についてフルカスタマイズで丁寧に時間とコストをかける余裕はどんな出版社にもありませんから、こういった形で一定のルールを定め、効率よく電子化を行う必要があるのです。
従って、「電書ラボEPUB制作仕様」もまた、基本的に「紙の書籍の内容をほぼそのまま電子化した電子書籍」を制作するためのものです。ただし、電書協ガイドや「KADOKAWA-EPUB制作仕様」などの先行するサブセットとは性格が異なる部分もあります。
出版社/制作会社のための制作ガイドライン
電書協ガイドやそれに続く「KADOKAWA-EPUB制作仕様」などといった先行ガイドラインとこの「電書ラボEPUB制作仕様」の一番大きな性格の違いは、「電書ラボEPUB制作仕様」は、出版社や制作会社が直に使うことを想定したガイドラインだという点になると思います。
電書協ガイドの最も大きな目的は、制作されるEPUBの形を固定し、各ビューア・ストアにその形式に準じて作られたコンテンツの適切な表示を要請することで、ワンソースで多くのストアに対応できるようにする事であるように思います。ストアごとにEPUBコンテンツの細部を作り分けなければならない状況が続いていてはとてもではないですが量産は望めませんから、これはとても大きな意義のあることです。
ただし、それが第一義である以上、電書協ガイドは基本的には「ストアの方を見て作られたガイドライン」であるとも言え、制作者向けには基本的に「こうしたコードで作りなさい」としか示されていないため、出版社や制作会社の現場で使うためには、もうワンクッションが必要だったのではないかと思います。
具体的には大きな出版社では、電子化の担当者が「電書協ガイドに沿ったコンテンツを制作するための社内ガイドライン」を作り、それをもとにコンテンツ制作を行ってきたのではないでしょうか。
この状態ですと、社内に専任の電子化担当者を置くことが出来ない中小規模の出版社には依然として敷居が高く、コンテンツ電子化の格差が広がりかねない状況であるようにも思われます。
「電書ラボEPUB制作仕様」は、この状況を鑑みて、中小出版社向けに「電書協ガイドに従って多くのストアにワンソースで供給できるEPUBコンテンツを制作するためのガイドライン」として使っていただくために提供するものです。同時に、制作会社と出版社との間で、「何をやり、何をやらないか」を事前にしっかり線引きをしておき、トラブルを防ぐためのツールとして活用していただければと思っています。
各項目を「やらないこと」を含めてホワイトリストとして提示
「電書ラボEPUB制作仕様」の基本的な制作方針として、従来の出版の要素に即して各項目を書き出し、「やらないこと」まで含めてリストアップを行いました。同時に、「やることはできるが、工数がかかる項目」をLV2、「一部のビューアが対応しておらず、一部のストア専用のコンテンツとして制作せざるを得なくなる項目」をLV3とし、それぞれオプション設定要素としました。もちろん各出版社・制作会社が実コンテンツを制作してゆく中で、リストから外れた要素が出てくることも当然考えられるのですが、そういった部分は積極的にフィードバックしていただいてリストに加えてゆき、同時に各ストアビューアの進化を継続的に追いかけて各リスト内容を変更してゆく必要があるように思っています。
マークアップ指針自体は電書協ガイドやKADOKAWA-EPUB制作仕様に準ずる
「電書ラボEPUB制作仕様」は以上のような性格のものですので、マークアップ指針自体にはほとんど独自性はありません。いずれサンプルも公開する予定ですが、KADOKAWA-EPUB制作仕様をベースにKADOKAWAの独自項目(OPF内のKADOKAWA表記など)を改変した程度のものになると思っています。KADOKAWA-EPUB制作仕様の大きな特長であるFixed-Layoutのハイブリッド仕様も「電書ラボEPUB制作仕様」でも使用できるようにするつもりでおります。
JISX0213「外」の文字の使用を考慮
電書協ガイドや先行する各サブセットと比較して、一点だけ大きく踏み込んでいる点があります。それは、「使用できる文字の幅」です。電書協ガイドでは、文字はJISX0213:2004内のものだけを使用するように定められていました。これは現行最新の日本語の文字集合規格ですので、安全な範囲設定と言えます。ただ、実際に各社のビューアで使用されているフォントはJISX0213:2004ではなくAdobe-Japan 1の規格に即して作られており、JISX0213:2004外の文字も含んでいます。このため、「フォントには入っており、実態としては使用できるにも関わらず、厳密に電書協ガイドに準じた場合には外字画像にせざるを得ない文字」というものが存在していました。
例を挙げますと、U+9AD9の「髙」※1や、U+2474〜U+2487の「⑴」〜「⒇」などはこれに相当し、DTPのデータなどでもそれなりに使用されている文字であるにも関わらず、EPUB制作時には外字画像にせざるを得ない状況でした。外字画像は一部のビューアでユーザが背景色を黒に設定した場合に背景に溶け込んで視認できなくなるなるなどのデメリットが依然として存在し、可能な限り減らした方が良いにも関わらず、こうした状況が続いていたわけです。
ただ、こうした文字に使用の保証を与えるには、JISX0213:2004に代わる何らかの基準が必要になります。そこで、「電書ラボEPUB制作仕様」では、あらかじめ各ビューアでの文字の表示状況を調査し、使用できる文字をホワイトリストの形で提示するとともに、将来的にはコンテンツ内の使用文字チェッカーを提供することでこれに応えることとしました。リスト・チェッカー共にまだ未提供ですが、そちらはもうしばらくお待ちいただければと思います。
◇
「電書ラボEPUB制作仕様」は、立ち上がったばかりであり、まだまだ多くの方のフィードバックを必要としています。また、こういった性格の仕様は、ビューアの実装を常に追いかけ、それに応じて恒常的に改訂していく必要があるものと思っています。フィードバックはこちらの「電書ラボ・意見交換グループ」にお寄せいただければと思います。また、近い将来、「電書ラボEPUB制作仕様」の公開仕様検討会を開催する予定です。ご意見をお持ちの方にぜひご参加いただければと思っております。
※1 U+9AD8「高」の異体字で、業界では「はしごだか」と呼ばれる。JISX0213では「高」に包摂されたために独自の符号位置を与えられなかったが、Unicodeの策定時に台湾から申請があったために結果的に使えるようになったらしく、実際に日本語の文書でも多用されている文字。
(2014.5.13)
カテゴリー: 未分類 | 1 件のコメント »
2014/04/29
リフロー型電子書籍における「ページ」は、利用者がドキュメントを開いた際にデバイスの画面サイズや設定された文字のサイズに応じて自動生成されるもので、紙の本における「ページ」のように、固定されたものではありません(従って「○○ページ参照」というような記述が使えないわけです)。ただ、EPUB3には実は元の紙の本のページを記述しておく仕様も定義されており、これは教育系コンテンツでのニーズから出たもののようです。
まあわかりやすいところで言えば、「教科書の○○ページを開いてください」と先生が言って授業を進める場合に必要になるといったところでしょうか。将来的にはこれは先生と生徒の間でのコンテンツ表示箇所の同期などによって解決されていくのかもしれませんが、当面は紙の教科書との併用も視野に入れなければならず、現状では元の紙の本のページの情報をEPUB内にも記述しておく必要があるというのは理解できるところです。
現在この機能を利用できるのは、私が観測した範囲ではiOS版のiBooksとMurasakiぐらいのようですが、どんなものなのか試してみましたのでお読みいただければ幸いです。
XHTML内の各ページ区切り箇所にタグを記入
まず、XHTMLファイル内の各ページの区切り箇所にタグを記入しました。ここの情報によれば、ページ数をコンテンツの一部として記述する記法や、ブロックレベル要素に記述する記法もあるようですが、今回は「Example 2」の記法に従ってコンテンツ内にページ数自体は表示させない形で記入しました。
<p> <span epub:type=”pagebreak” id=”page1″ title=”1″/>ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る ページ1本文入る <span epub:type=”pagebreak” id=”page2″ title=”2″/>ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る ページ2本文入る <span epub:type=”pagebreak” id=”page3″ title=”3″/>ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る ページ3本文入る </p>
というような感じで、この「<span epub:type=”pagebreak” id=”page××” title=”××”/>」というタグを各ページ区切りの箇所に挿入していきます。「××」の箇所の番号が、表示させるページ番号にあたります。
ページのリストをNAVファイル内に記入
次に、NAVファイル(電書協ガイドのフォーマットでは「navigation-documents.xhtml」、論理目次の表示用ファイル)内に、ここの情報を参考に各ページのリストを記入しました。ここのリストは各ページに記入したページ区切り用のタグと1対1で対応するものですので、id番号などは厳密に同じにしておく必要があります(通常のページリンクと同様です)。
<nav epub:type=”page-list”>
<ol>
<li><a href=”p-001.xhtml#page1″>1</a></li>
<li><a href=”p-001.xhtml#page2″>2</a></li>
<li><a href=”p-001.xhtml#page3″>3</a></li>
</ol>
</nav>
iBooksで表示してみる
完成したテストファイルをiBooksで表示させてみました。目次のメニューを表示させますと、ページ下部に「プリントされたページ番号を表示するには、タップします」という表示が出ています。これをタップすることで目次内の表示ページ番号が実ページのページ番号に切り替えられ、またコンテンツ内にもページ番号が表示されるようです。
◇
まあ今回の内容はIDPFの公式ページにしっかり情報がありましたので、そこを見て書けばいいという話ではあるのですが、使用例が少ないせいかソースにたどり着くまでに少々時間がかかりましたので(@lost_and_found氏、情報提供感謝です)、メモ代わりに情報を残しておきます。
テストファイルはこちら
>>
(2014.5.1)
カテゴリー: 未分類 | 1 件のコメント »
2014/03/14
検証機としてKindle PaperWhite2013を入手したのですが、どうやら大きめの地雷を発見してしまったっぽいので報告です。
どうもPaperWhite2013の新機能の脚注ポップアップ周りにバグがあるらしく、通常のリンクを脚注として表示してしまうことがあるようです。なお、Kindle PaperWhiteのファームウェアは「Kindle5.4.2(2155730032)」です。一方で正常にリンクが動作する場合もあり、正直条件が確定できませんでした。以下、その報告です。
普通に記述したリンクタグが脚注として表示されてしまう
リンクのタグは例えば以下のような感じです。
リンク元:
<p>二 遠野の町は南北の川の落合にあり。以前は<a class=”cyu” href=”p-009.xhtml#ref-002″>七七十里<span class=”key” id=”key-002″>(2)</span></a>とて、七つの渓谷おのおの七十里の奥より売買の貨物を聚め、その市の日は馬千匹、人千人の賑わしさなりき。四方の山々の中に最も秀でたるを早池峯という、北の方附馬牛の奥にあり。東の方には六角牛山立てり。石神という山は附馬牛と<a class=”cyu” href=”p-009.xhtml#ref-003″>達曾部<span class=”key” id=”key-003″>(3)</span></a>との間にありて、その高さ前の二つよりも劣れり。大昔に女神あり、三人の娘を伴ないてこの高原に来たり、今の<a class=”cyu” href=”p-009.xhtml#ref-004″>来内<span class=”key” id=”key-004″>(4)</span></a>村の伊豆権現の社あるところに宿りし夜、今夜よき夢を見たらん娘によき山を与うべしと母の神の語りて寝たりしに、夜深く天より霊華降りて姉の姫の胸の上に止りしを、末の姫眼覚めて窃にこれを取り、わが胸の上に載せたりしかば、ついに最も美しき早池峯の山を得、姉たちは六角牛と石神とを得たり。若き三人の女神おのおの三の山に住し今もこれを領したもう故に、遠野の女どもはその妬を畏れて今もこの山には遊ばずといえり。</p>
リンク先:
<p id=”ref-002″><a class=”cyu” href=”p-003.xhtml#key-002″>(2)</a>この一里は小道すなわち坂東道なり、一里が五丁または六丁なり。</p>
<p id=”ref-003″><a class=”cyu” href=”p-003.xhtml#key-003″>(3)</a>タッソベもアイヌ語なるべし。岩手郡玉山村にも同じ大字あり。</p>
<p id=”ref-004″><a class=”cyu” href=”p-003.xhtml#key-004″>(4)</a>上郷村大字来内、ライナイもアイヌ語にてライは死のことナイは沢なり、水の静かなるよりの名か。</p>
特に変わった書き方をしている訳でもないごく当たり前のリンク指定で、タグは電書協ガイドのものをそのまま用いています。普通に考えればこれで脚注にはならないのですが、手元のPaperWhite2013では以下のように脚注として表示されます。

まあこの箇所に関しては注釈へのリンクですので結果オーライとも言えるのですが、これが例えば目次のリンクでも発動してしまいますので困ったことになります。

別の実機でもテストしてみた
ちょっとラチがあきませんので、Kindle PaperWhite2013をお持ちの、ブログ「見て歩く者」を運営されているライターの鷹野凌さんにご協力をいただき、別の実機でもテストを試みました。結果はほぼ同じでした。ただ、全く同じコンテンツで正常に動作したリンクと脚注として表示されてしまったリンクに差異が見られ、正直法則性が全く読めません。鷹野さんのPaperWhite2013のファームウェアは「5.4.2.1(2187320002)」とのことでしたので、もしかしたらファームウェアの差によって挙動が変わるのかも知れませんが、率直に言ってそんなことで「リンク」などという基本的な部分の動作の挙動が変わられてしまっては困ります。
別のマークアップ方式ではどうなるだろうということで、「電書ちゃんねる」の高瀬拓史さんにもご協力をお願いし、でんでんコンバーターの生成した注釈相互リンクコンテンツでもテストを行いました。こちらのソースは以下の通り※1。
リンク元:
<p>一 女鹿たづねていかんとして<a id=”fnref_1″ href=”#fn_1″ rel=”footnote” class=”noteref” epub:type=”noteref”>1</a>白山の御山かすみかゝる<span class=”upright”>〻</span></p>
<p>一 うるすやな<a id=”fnref_2″ href=”#fn_2″ rel=”footnote” class=”noteref” epub:type=”noteref”>2</a>風はかすみを吹き払て、今こそ女鹿あけてたちねる<span class=”upright”>〻</span></p>
リンク元:
<div class=”footnotes” epub:type=”footnotes”>
<hr />
<ol>
<li>
<div id=”fn_1″ class=”footnote” epub:type=”footnote”>
<p>して、字は〆てとあり。不明 <a href=”#fnref_1″>⏎</a></p>
</div>
</li>
<li>
<div id=”fn_2″ class=”footnote” epub:type=”footnote”>
<p>播磨檀紙にや。 <a href=”#fnref_2″>⏎</a></p>
</div>
</li>
</ol>
</div>
こちらではリンク元の側がそもそもリンクとして動作してくれませんでした。もちろんどちらのコンテンツも、他のEPUBビューアでは少なくとも相互リンクとしてはきっちり動作してくれています。なんだかもうわけがわかりません。
そもそも脚注のマークアップ記法説明ドキュメントが見あたらない
そもそもKindle PaperWhite2013の脚注ポップアップ対応は先日の制作者向けセミナーでもPaperWhite2013の新機能として説明されていましたが(鷹野凌さんのレポート記事)、最新のKindle Publishing Guidelineにも記法の説明がありません。
制作者サイドとして切に望みたい対応は、epubの標準的な脚注記法に合わせて実装してくれることなのです。ですがどうもそうはなっていないようです。実際に「<a epub:type=”noteref” href=”p-000.xhtml#ref-000″>○○</a>」のような形でIDPFの脚注仕様に合わせたマークアップもやってみたのですが、この方法で明示的に脚注指定した箇所だけでなく、通常のリンクとしてマークアップした箇所まで脚注として表示されてしまいました(参考:「iBooksの注ポップアップを試してみた」)。現状、Kindle向けコンテンツでは明示的に脚注リンクを指定する方法が提示されていない状態です。
また、もうひとつの問題は、Amazonが校正用ビューアとしてリリースしている「Kindle Previewer」上ではこの現象は再現せず、あくまでKindle PaperWhite2013の実機上でのみ発現する現象であることです。つまり、「Kindle Previewer」がプレビュー用ツールとしての役目を果たせていません。Kindle Previewerできっちり校正をかけリリースしたコンテンツが、実際の読者の手元で見たときにはエラーになってしまう可能性があるというのでは、何のためのプレビュー用ツールかわかりません。
少なくとも今回のケースで、コンテンツ制作側での対処は無理です。何しろごく当たり前のリンク指定が脚注として表示されてしまい、発生条件が機械によって変わるのですから。この件に関しては、Amazonには早急な原因究明と、とりあえずの処置としての注釈ポップアップ処理の停止措置を望みたく思っています。
検証に使ったファイルはこちら
>>[download id=”32″]
Kindleに限らず、現状電子書籍のビューアはまだまだ不具合が多く、機能面も必ずしも十分とは言えません。ただ、これは積極的に声を上げ、修正・改良を促すことで将来的にきちんとしたものを提供してもらうという気構えが制作者サイドにも求められるのではないかと思います。Amazonのフィードバック窓口はこちらです。みなさんどしどし意見を寄せ、修正すべき点はどんどん修正してもらうのが良いのではないかと思います。
※1 EPUBの仕様に従って明示的に脚注を指定しているマークアップとのこと。
(2014.3.17)
タグ: kindle, ポップアップ, 脚注
カテゴリー: 未分類 | 2 件のコメント »