Archive for プラットフォーム

Kindleで文章ポップアップ型写真集を作ってみた

 Kindleの固定レイアウトのサンプルを見ていたら、ダブルタップでテキストを画像上にポップアップできる機能があることを知り、それを利用して写文集を作ってみました。

 サンプルはこのページにある「Graphic Novel example」というリンクからダウンロードできる「ComicSample」という圧縮ファイルの中にある「The Absurd ABC」というmobiファイル。圧縮ファイルの中には他にmobiのソースファイルも入っています。

 「The Absurd ABC」というサンプル本には、Kindleの「領域拡大(Region Magnification)」の実例がたくさん入っていますが、今回目を引いたのは、最初の「copyright」のページの、画像による文字ページをダブルタップすると、テキストがポップアップされる機能です。最初はポップアップも画像かと思ったのですが、よく見るとテキストのよう。ソースのcopyright.htmlをエディターで開いてみると、確かにテキストがbody要素に書き込まれています。

clip_1 ☞☞ clip_2

 で、思いついたのが、これを利用したら面白い写文集ができるのではないか、ということ。以前から撮り溜めた山の写真を素材に電子本を作ってみたかったのですが、素人写真を固定レイアウトでただ並べるだけでは芸がないので、文章も加えて色を着けてみたいところ。しかし、固定・リフロー混在にするにしても、固定オンリーで行くにしても、写真ページと文章ページが入り交じるというのは、少し冗長なような気がします。その点、写真をダブルタップして文章が表示できれば、無駄のない作りになります。

 copyright.htmlをのぞくと何やら幾つもdivタグが重ねられています。画像の配置に加えて、ダブルタップする領域やテキストをポップアップする領域が指定されているようです。IDが振られたものも3つほどあります。このサンプル本では複数のページのそれぞれ異なった場所で領域拡大がセットされていますので、それぞれにIDを振っているのでしょうが、今回の写文集ではポップアップの仕様は全ページ同一でオーケー。そこでややこしい構造に頭を悩ませながら、ID指定をCLASS指定に変更。

<div class=”fs”>
<div>
<img src=”../images/01.jpg” class=”singlePage” />
</div>
<div class=”bun”>
<a class=”app-amzn-magnify” data-app-amzn-magnify='{“targetId”:”bun-magTargetParent”, “ordinal”:1}’></a>
</div>
<div id=”bun-magTargetParent” class=”target-mag-parent”>
<div class=”target-mag-lb”></div>
<div class=”target-mag”></div>
<div class=”text”>
<p class=”part”>1.</p>
<p>
九十九折の登山道を、<br />

 真ん中あたりの「data-app-amzn-magnify」が領域拡大のスイッチで、その下のテキスト画面の設定は3層重ねになっているようです。もちろんCSSの方も、これに合わせて適宜書き換え、テキスト画面のサイズ・色・透明度なども変更しています。フォントの指定はserifだけではなぜかゴシックになってしまいますが、TBMinchoを直接指定すると明朝にできました。

 コーディングにはまったく自信がありませんが、これで何とか目的の文章ポップアップ型写文集が実現できています。作り方のせいなのか、環境の問題なのか、若干動作が不安定になる時もありますが、本を開き直せば戻りますので、大過はなさそう。動作の具合はKindleストアの無料サンプルで確認できます。また、DRMは設定していませんので、calibreというソフトを使ってKindle本をEPUBに変換して、ソースを流用することも可能だと思います。

clip_3
 ☟☟ 

clip_4

コメント

「羇旅漫録」で苦労した点

 先日、四つめのEPUB本「羇旅漫録」をアップしましたが、その制作も暗中模索・試行錯誤の連続。まあ、多くは自分のスキル不足が原因なのですが、なかにはEPUBの規格やリーダーの仕様によるものもあります。制作の過程で見えてきたことを、以下にまとめておきます。

FUSEeβを初使用
 この本は鏡花本の場合と違い、古典といっても味読系ではなくいわば情報系で、どう書かれているかより、何が書かれているかが肝。で、思い切って読みやすさを重視して本文を新字・新かなにしてしまいましたので、二三の外字画像を使った以外は、旧字関係の苦労は回避できました。また、ルビの量も総ルビの鏡花本とは大違いだったので、制作はinDesignを介さずに、エディターで加工した元テキストをFUSEeβ に取り込んで行いました。FUSEeβはEPUBを直接編集するSigilと違い、プロジェクトファイルを保存してそこからEPUBを書き出すスタイルのソフトですが、定型的な工程はSigilと同じように自動化されているようで、違和感なく使うことができました。ただ、高価なマニュアル本を買わずに手探りで使っていますので、パッケージ文書などを手編集した際、下手なことをやってしまってプロジェクトファイルが開けなくなったりといったことも。書き出していたEPUBファイルを読み直して再開できましたが、自動化が主体のソフトだけに手編集への許容度は低いのかもしれません。また、一応完成した後のEPUBファイルの小さな手直しはSigilの方が手っとり早いのでこちらを使っていますが、SigilはSigilでドキュメントを勝手に書き替えてしまうことがあり気が抜けません。もともと個人が効率に関係なくシコシコやっていることながら、制作の流れはまだまだ流動的で不安だらけです。

挿図の位置はリーダー任せ?
 この本には大小の挿図がけっこうな数あり、今回はそれをどう入れるかに苦心しました。挿図は大きく分けて、①1ページを丸々占めるもの、②上寄せか下寄せか天地100%で文中に置くもの、③行内に文字と連なって置くもの、の3種類がありましたが、悩ましいのは①と②、特に②。図の入る位置にスペース(横幅)が十分にない場合は、図は次のページに送られてしまい、前のページには大きな空白ができてしまいます。1ページ大の図の場合は関連した文章の次のページに図のページが来るので、多くの場合文章の後に空きができるのは、まあ仕方のないことですが、②の挿図でこれが起こってしまうのはちょっと苦しいという感じがします。文字組みが決まっていれば、イメージタグの挿入位置を前後させることでうまく収めることもできるのでしょうが、リーダーによって文字組みは異なりますし、読者が文字サイズを変えることによっても違ってきます。あらゆる条件でベストな挿図の位置などというのは、現状では実現不可能でしょう。このようなことが起こるのは、文章の特定の位置にしか挿図の指定が行えないからですが、それをもっと幅をもたせて一群の文章のどこか適当な位置に置くといった指定ができて、それをリーダー側が空白が出ないように塩梅できるようになれば、もうちょっと改善されるのではないかと思いますが、果たしてそんなことが可能なのかどうか。

リーダーによって違うナビゲーション文書
 EPUBにはナビゲーションドキュメントというものが必須で、リーダーはこの文書を目次表示機能で利用しています。EPUB2までは.ncxという拡張子の書類がそれで、コンテンツ内に目次を置きたい場合は、それとは別に目次ページも作らなければならなかったのですが、EPUB3からはXHTMLのナビゲーションドキュメントを一つ作れば、それがリーダーのシステム目次とともにページ内の目次も兼ねるようになりました。もちろん、EPUB2のように別途目次ページを用意してそれを使うことも可能です。
 ややこしいのが、リーダーによってこのナビゲーションドキュメントの扱いが異なるということです。たとえば、iOSのKinoppy・bREADERとkoboは.ncxとXHTMLの両方、つまりEPUB2・3のナビゲーションドキュメントを利用できますが、ソニーReaderは.ncx文書しか読んでくれません。だから、ソニーReaderに対してはシステム用の.ncx文書と本文用の目次が必要です。一方、Kinoppy・bREADERとkoboはXHTMLのナビゲーション文書一つあればシステム用と本文用を兼ねられるはずですが、Kinoppy・bREADERにEPUB3のナビゲーション文書を本文目次として読ませると、EPUB3の規定通りにリスト形式で記述されたその目次は、何と改行されずに一連なりになって表示されてしまう、つまり目次として使えないということが起ります。ややこしいですが、まとめるとこういうことです。

    システム目次 本文目次
nav.ncx(EPUB2) nav.xhtml(EPUB3)
ソニーReader × 別途用意
楽天kobo ナビ文書兼用可
iOS Kinoppy・bREADER 別途用意
(bREADERはリンク不可)

 つまり、koboだけならEPUB3のナビゲーションドキュメント1つで完結するのですが、ソニーReaderとKinoppy・bREADERのことを考えると、結局3つの目次関係の文書を用意しなければならないということになります。いや、厳密にいうと、現状ではEPUB3のナビゲーションドキュメントはなくても構わない(鏡花EPUBはそうです)のですが、今回はFUSEeが自動で作ってしまったし、EPUB3と名のる以上はやはり置いておかなくちゃ、という次第です。
 ところでもう一つ、目次に関して落とし穴がありました。今回の「羇旅漫録」はKinoppyではなぜかシステム目次が空白になり表示されないのです。同根のリーダーであるbREADERには問題がないのにどうしたことかと、色々試してみて結局分ったのは、ナビゲーションドキュメントにマーカーが使われているのが原因だということ。ファイル内リンクのための#を頭につけたマーカーがあるとKinoppyはその目次を読まないようです。仕方なくKinoppyでは、ファイル内リンクを省いたおおざっぱな目次のみでお茶を濁しています。

koboの栞対策
 前回の投稿でも触れたkoboで自作EPUBを読むと、栞(読書位置)が残らないという現象。一番の対策はセンテンスごとに< span >タグで一定の番号を振ることのようですが、それはあまりに手間なので、「羇旅漫録」では各項目ごとに< section >タグで括って、kobo.1.1から始まる番号を振っています。これで一応は栞が残りますが、次に開いた時は各項目の頭、つまり見出し部分に戻ることになりますので、複数のページに渡る項目では厳密に読んでいたページが記録されるというわけではありません。また、全文検索ではピックアップはしますが、単語の位置へのジャンプはできないようです。

 「羇旅漫録」制作で出くわした主な問題点は以上ですが、他にもソニーReaderではカバーの書影が扉の画像に固定されていてパッケージ文書での指定が効かない、koboのシステム目次で、同一ページに二つの目次項目がある場合、後ろの項目へしか飛べない、前の項目をタップするとファイルの先頭へ飛んでしまうといった、各リーダーに起因する問題があり、これらに対しては今のところお手上げです。いずれにしても作ることで問題に出くわし試行錯誤しながら何とか対策を見いだしていくというスタイルで、これからもEPUBとじっくり楽しくつきあって行きたいと思っています。

コメント

鏡花 vs EPUB3 感想

 ソニーReaderのEPUB3対応が発表された3月末から約3カ月、鏡花作品のEPUB化という目標を個人的に設定して、試行錯誤を楽しんできました。そして数回にわたってその報告をしてきたわけですが、ここではその要点をまとめておきます。旧字旧かな総ルビの鏡花本を試金石にした、EPUB3とその読書システム(具体的にはソニーReaderとiOS版Kinoppy)の評価、といえば大層ですが、まあ感想を書き連ねてみます。

●旧字
 電子本でも作者が好んだ文字の姿そのままで鏡花を読みたい、という私のような偏狭な読者兼入力者にとって、EPUB が鏡花本の膨大な旧字にどこまで対応できるかは最大の関心事であり不安点だったわけですが、残念ながらというか、事前に予想できた通りというか、その願いは十分には適えられませんでした。

 EPUB は文字コードとしてユニコードを採用していますが、ユニコードに収録された文字がどこまで使えるかは、結局、読書システムが拠っているフォント次第ということになります。また、漢字には同じ働きをする漢字でも形が異なる異体字というものが数多く存在しますが、それを区別して独自に番号を振るということは、ユニコードでは行なわないことになっているようです。特に後者の異体字は鏡花本に頻出しますから、鏡花が使った異体字のEPUBでの完全な再現はあきらめなければなりませんでした。その場合は、新字や略字などの基本の字に置き換えて表示するしかありません。文字画像で表示するという方法ももちろんあり得ますが、鏡花の場合、その膨大さを考えるととても実用的とは言えません。文字画像を使用するのは、異体字どころか基本字も存在しない外字のみということに留めるのが、現実的な対応だと思います。

 ただし、どういうわけか異体字でも独自のユニコード番号を振られたものがあり、それは使うことができます。たとえば、拔・樣・顏などのような、かなりの異体字を生かすことができます。つまり、3つの鏡花本は異体字のままのものと異体字をあきらめて基本字にしたものとのチャンポンになっているわけで、漢字の扱いとしては統一した基準を持たない場当たり的な状態と言わなければならないでしょうね。まあこれは、偏狭な愛好者が個人的な嗜好を優先して作った電子本ということでお許し頂きたいと思うのですが、もし世に知られた出版社がEPUB本として鏡花を扱う場合は、岩波の「新編泉鏡花集」のように総ルビ・旧かなでありながら漢字は新字を使うという、これまた不思議な姿で出す他ないのが現状ではないかと思います。EPUB には鏡花はまだ荷が重いようです。

 けど、先に希望がないわけではありません。DTPの世界にはAdobe社が作ったAdobe-Japan1という、異体字の字形それぞれに番号を割り当てた文字コレクションがあり、それを含んだフォントもあって、DTPではこれらを使うことで鏡花の異体字もほとんどが再現できます。EPUBと一緒にアップしているPDF版はこのAdobe-Japan1を利用したもので、表示できなかった異体字はわずかしかありませんでした。もし将来、このAdobe-Japan1のコレクションをEPUBで利用できるようになれば、その時初めて、鏡花本の豊麗な紙面をEPUBにそっくり移植できるということなるのではないかと思います。

 ところで、初めに「ユニコードに収録された文字がどこまで使えるかは、結局、読書システムが拠っているフォント次第」と書きましたが、その点では、今最も実用的と思われる二つのEPUB3読書システム、ソニーReaderと iOS版Kinoppy には十分に強力なフォントが積まれているようです。たとえば、iOSにはKinoppyの他にもbREADERというEPUB3に対応した読書アプリがあって、これで見ると鏡花EPUBはけっこう文字化けを起こします。積んでいるフォントの収容文字数の違いでしょう。もしbREADERを読書環境の基準と考えた場合は、鏡花EPUBの文字はさらに制約を受けることになってしまいます。

 だから、本来、全EPUBリーダーのフォント環境は同一レベルであることが望ましいのですが、そうなっていないのが現状のようです。またソニーReaderと Kinoppy にしても、片方で表示できても片方はだめという字がわずかながらありました。たとえば、u2f8b2の成の異体字。この字は独自のユニコード番号をもち、EPUB でも表示できるはずです。ところが、Reader内蔵の筑紫明朝では表示できるのに、Kinoppy の各フォントでは文字化けします。どうしてなのか、その辺の仕組みは私には分りませんが、鏡花EPUBは異体字を一つ損しました。

 EPUB の旧字対応に関する感想はこんなところですが、ここまで旧字にこだわる必要があるのはごく特殊なケースで、多くの場合、ユニコードが使えるEPUB の文字環境は必要十分だという一般的な評価も、また事実だと思います。たとえば明治・大正の文学でも積極的に新字に書き替え、場合によっては仮名遣いも直した方が、現代の読者には読みやすいだけでなく、理解も深まるという場合も多いのです。御大漱石の小説にしたって、新字新仮名で読んでその面白さに何の不足も生じないし、その本質的な意義も十全に伝わるのではないでしょうか。ただし、鏡花の小説やたとえば日夏耿之介の随筆や近代の詩歌の全部については、それをしたら失うものが少なくありません。考えてみると、それを平気でやってきたのが戦後の出版だったわけですが、電子書籍にはその轍を踏んでほしくありません。EPUB出版の自由さが原典の再生と尊重につながり、EPUB読書の自由さが忘れられかけている文学の再発見と日本文の再生につながればと思います。

●ルビ
 総ルビの文章をEPUB化するなど、考えたらぞっとする作業ですが、それをやってしまうのが愛好者というものです。いえ、私のことではなく、[鏡の花]というサイトがあって、春陽堂版全集を底本に精力的に総ルビ・旧字の鏡花をPDFでアップしていっておられます。これに比べたら短編選3編の総ルビなど大したことはありませんが、それでも入力には素の文章のまあ1.5倍の手間はかかりました。ただ、今回は入力にinDesignを使いましたので、テキストにルビタグを書き込むよりは少し省力化できたかもしれません。

 もっとも、EPUBでのルビタグの振る舞いを事前に調べておかなかったせいで、後でグループルビをモノルビに全面変更するという二度手間に陥ったしまったのは、inDesignに頼りすぎてしまったせいかもしれません。inDesignからのEPUB書き出しは、確かに便利な部分もありますが、その後の手修正の手間も少なからず発生します。inDesignは気づかないような小さな指定のブレも、律義に拾ってEPUBに書き込んでしまいますので、それを取り除くのがちょっと面倒だったりします。たとえば、本文やルビのフォント指定が一部別のものになっていたりすると、それだけでHTMLとCSSに立派なクラス指定が出現したりします。また、inDesignはルビタグに未対応ブラウザのための rpタグを入れてしまいます。 ルビ対応が義務化されたEPUB3ではこれは不要で、ただでさえルビタグのせいで肥大化しているHTMLには負担ですので、これも全部除去しなければなりませんでした。ルビが少ないテキストの場合は、TEXTファイルを直接Sigilに読み込んだ方が手間がかからないかもしれません。

 で、EPUBでのルビタグの振る舞いですが、複数の漢字に一度にルビを振るグループルビを使うと、そのルビの途中での改行はできなくなります。そのため熟語がそっくり次行に送られてしまって、行末が揃わなくなります。これを避けるには、グループルビを使わず漢字一字ごとにルビを振るモノルビに変えるしかなかったという次第です。また、inDesignでスペース区切りのモノルビを熟語に当てている場合も、EPUBではグループルビになり、しかもスペースがルビに残ってしまいますので、これもモノルビにせっせと変更しました。モノルビのみの指定は手間が多く、またタグが増えてHTMLが膨らんでしまいます。今後は、ネット上で言われているように、グループルビと同様にまとめて指定できて、しかも途中改行を許す「熟語ルビ」のEPUBへの追加を待ちたいところです。

 次に読書システム側でのルビへの対応について。最初、ルビが指定通りに振られて表示された時は感激したものですが、じっくり見ていくと気になる点も見えてきます。まず、ソニーReaderのルビは中付きで、1文字に3字以上のルビだと、親文字の前後の字間を広げる設定になっているようです。このため総ルビの場合、字間の広がった個所が頻繁に出てきて、文字の連なりが少しぎくしゃくした印象になります。一方、Kinoppyのルビは肩付きで、Readerのように字間を広げる処理はまったくせず、そのまま下へルビを垂らして、他の文字にかかるままになっています。極端な場合は右のようなことになります。Readerの方がルビの扱いとしては丁寧なのでしょうが、字間を広げるのと、他の文字にルビをかける「文字かけ」処理を併用して、できるだけ字送りを維持してもらえたらと思います。そもそも、読書システムによってルビ処理がマチマチなのが気になります。上に触れた文字環境の不統一といい、読書システム間の処理の統一が望まれます。

●旧かな
 かな文字については何の文句もありませんが、繰り返し記号のくの字点もかなに入れるなら、両読書システムで改行での泣き別れが発生するのが困りものです。禁則処理に含まれていないのでしょうか。「white-space: nowrap;」で改行禁止にしてみると、Kinoppyでは効果がありましたが、Readerでは効かないようです。また、句読点の禁則違反も両方でまま見られます。この辺りは今後のチューニングに期待するしかありません。

●体裁・レイアウト
 EPUBのレイアウト能力については、総扉などは画像貼り込みですし、中面も単純なことしかやっていないので、突っ込んだ評価はできません。これまでの投稿で苦労した点として報告したのは、扉ページの縦1行のタイトルを左右中央に配置する方法がなく、横組みにして中央で一字づつ改行という奇策を使ったというのと、突き出しインデントになった引用文で、ソニーReaderの半角起し括弧を処理するのに困り、これも白文字を使うという禁手を使ったこと。これらはEPUB規格の今後の拡張とリーダーの改訂を待つしかなさそうです。今回は使わなかったけれど、今後お世話になるかもしれないレイアウト機能としては、ページ内への写真や挿絵の配置、注、段組などがあげられますが、EPUB雑誌などもっと複雑なレイアウト物をめざすのでなければ、基礎的なレベルのCSSで何とかやっていけるのではないかと考えています。

 読書システムの側のレイアウト機能として気になったのは、マージンへの対応が両機で違っていたこと。ソニーReaderはCSSでのページの余白指定に反応しますが、Kinoppyは独自の余白を保持したままです。そしてReaderの方も、マージンをゼロにしても周囲にわずかに余白が残ります。実は総扉の画像を絶ち切りのように画面一杯に表示したかったのですが、これはあきらめました。

Comments (2)

引き続きEPUB3と格闘中

 「親子そば三人客」に続いて、「鏡花短編選 世話編」をEPUB化してみました。出来上がりはすでに[オリジナル電子本]にアップしていますが、「テスト版」としているのは、ソニーReaderでけっこう深刻な表示の遅滞が発生するためです。引っかかる個所はいつも決まっていて、最後の「假宅話」の部分。この作品には一段落が改行されずに長々と続く個所が幾つかあり、その辺りにさしかかると「お待ちください」の表示が出て、ページ送りが長々と待たされます。ただでさえ重い総ルビの文章に、長い段落が重なってソニーReaderが音を上げたものと思われますが、iPod touch の Kinoppyなどでは何の問題もなく表示されますから、Readerの非力さはちょっと情けない感じです。お試しになる場合はその点ご留意ください。

 さて「世話編」のEPUB化は例によってinDesign5.5からの書き出しからスタート。後々、修正の手間がかかるinDesignからのEPUB書き出しですが、膨大なルビを避けて通れない鏡花本の電子化には欠かせないツールになっています。おっとその前に、「親子そば三人客」でもやった、ルビのグループルビからモノルビへの全面変更を。これはけっこう時間がかかりました。そして「親子そば」で化けた異体字を基本字に戻しておきました。これは後で Sigil 上でもできます。

 次に、書き出されたEPUBを Sigil で編集します。「親子そば」と同じくCSS指定の不具合を直し、作品ごとに書き出されたXHTMLファイルから、さらに各タイトルページを独立させます。目次ページはinDesignが書き出していますから、扉や奥付のページやらを追加しておきます。そして、それらのファイル名を toc.ncxファイルの<navMap>以下に書き込んでいくと、右ペインに目次の一覧が現れ、 content.opfの<manifest>にアイテムが列挙され、<spine>にページの並びが指定されていきます。このあたりの自動化も Sigil を使うメリットでしょうか。

Sigilイメージ

 ところで、上記の toc.ncxファイルは EPUB2 に添ったもので、内容は目次そのものでありながら、目次ページは別に用意しなければならなかったのですが、EPUB3からはXHTMLのナビゲーション文書を作れば、それが目次ページも兼ねることになっているようです。ところが、Sigil はまだEPUB3に対応しておらず、扱えるナビ文書は toc.ncxのみで、目次ページを別途作らなければいけません。下位互換のためにEPUB3でも.ncxファイルが扱えて、実際上は問題がないようなのですが、Sigil のEPUB3対応が待たれるところです。(作者のブログを見ると、残念ながら次のバージョンでもEPUB3対応はなさそう)

 さて、骨組みができたら、中身を整えていきます。最初の扉ページにはカバー画像と同じものを貼り付けることにし、小村雪岱の装幀画をバックにタイトル文字を置いた960×640の画像を作りました。これを Sigi で画像フォルダに入れ、右クリックで「セマンティクスを追加」「表紙の画像」と選べば、content.opfの<meta data>にカバー画像の設定が追加されました。そして扉ページにも同じ画像を配置し、CSSでページにめいっぱいになるように指定しました。

 苦労したのは各短編のタイトルページ。ページの中央に作品名が縦に置かれるだけのレイアウトですが、縦書きで左右中央に文字を配置する方法が分りません。調べてみると、EPUB日本語基準研究グループの「EPUB3日本語ベーシック基準」には

扉表現
縦書き日本語書籍の場合、扉ページではページ中央に配置することが多いが、EPUBの場合には、現時点では表現する方法がない。テーブルレイアウト(tableタグではなくスタイルのtable-cell)を使う方法もあるが、EPUB読書システムも対応しているとは限らず、またスタイルを使っているといっても、テーブルレイアウトをしたのでは、構造とスタイルの分離の意味がなくなってしまう。
ここでは、中央に揃えることはできないという前提で、前に空きを入れて調整する。

などと書かれていて、意外な悩み所のようです。

 推奨のように前に空きを入れてみても、ソニーReaderとKinoppyではずいぶん表示位置にずれがあります。かといって、このページも画像貼り付けというわけにもいかず、悩んだ末、タイトルページだけ横組みにして、左右中央に配置した文字を1字づつ改行して縦に並べるという奇策で切り抜けました。表示はみごとに中央にきましたが、文字データの扱いとしては邪道で、とてもお勧めできる方法ではありません。

 もう一つ、小さな工夫をしたのは、本文内にある一二三、上下などの章題の扱い。それぞれ一定の字下げをし、左右に空き行を取っていますので、各章題にclass指定を行い、CSSでindentと左右のmarginを一括指定することで、みごとに定位置に納まりました。こんなことは工夫というよりもCSSの機能としては当たり前のことかもしれませんが、遅れてきたCSS初心者としてなかなか気持ちのいいことでした。

 目次の後には注記ページを設けて、入力の底本やルビ・仮名遣い・旧漢字など、テキスト入力に関する注記事項を入れておきました。底本の旧字・異体字をほとんど生かすことができたPDF版と違い、EPUB版ではリーディングシステムが採用しているフォントの収録範囲内でしか旧漢字・異体字を使用できません。そのため、たとえば一点しんにょうがあったり、二点しんにょうがあったりと、底本の字体の統一性を損ねています。それでもできるだけ旧字や異体字を残したいと思うのは、鏡花の場合、総ルビなども含めて、活字紙面の姿そのものが表現の重要な一部になっていると考えるからです。新字統一、部分ルビの鏡花など読む気がしません。

 末尾には形ばかりの後付のページを置いてみました。書誌情報といえばEPUBにはメタデータがありますが、これから増えるだろう自主出版の電子本の場合、ISBNコードはないし、何を入れればいいのか悩むところです。しかし、それぞれの本にメタデータがあることで、ウェブ検索のように、世にある電子本の書誌情報を全検索して、ダウンロード・販売サイトに連れていってくれる検索システムが出現することは十分考えられます。自主出版だからこそメタデータを充実したものにしておく必要がありそうです。(データ登録制のようですが、OPDSカタログというものが既にあります。検索サイトも)

 さて、一応完成したEPUB3版の鏡花短編選をソニーReaderとiOSのKinoppyで見ると、最初に触れたソニーReaderでの表示の遅滞に加えて、行頭の句読点や受け括弧、行末の起こし括弧、くの字点の改行での泣き別れといった文字組みの破綻がわずかながら両方で見つかりました。禁則処理はEPUB側の指定も関係ありそうなので、CSSで「line-break : strict;」や「word-break : keep-all;」を入れてみましたが、状態は同じ。リーディングシステム側の改善に期待するしかなさそうです。なお、くの字点にnowrapを当てて中途改行禁止にしてみると、Kinoppyには効果がありましたが、ソニーReaderには効果なく、全点に施すのはやめました。

 最初は手探りでつきあい始めたEPUB3ですが、実地に試しているうちに、どこをどうすればどうなるかが少しずつ分かってきました。あくまで Sigil 頼みですが、構造・レイアウトが単純な文芸物などは、これで何とかなるのではないかという気がしています。EPUBでの自主出版のハードルはかなり低くなりました。後は、EPUBの豊かな可能性がもっと認知されて、制作から流通・読書環境までが充実し、これまで商業出版に排除されていた書物の芽がいたるところで顔を出し、これまで片隅に埋もれていた優れた書物が誰にも容易に入手できるようになれば、仲間ぼめとセンセーショナリズムに窒息しそうな日本の本の世界も、もっと自由闊達なものになるのではないかと思います。そのために、というほどの使命感は持ち合わせませんが、私も自分の実用と未来に参加する楽しみのために、EPUBの本作りを継続していきたいと考えています。

コメント Trackback / Pingback (1)

KinoppyでEPUB3入門

 紀伊国屋書店の iOS・アンドロイド向け電子書籍アプリ「Kinoppy」の評判がこの所、鰻上りのようです。EPUB3 にも対応しているという話なので、このアプリをターゲットに EPUB3 書籍の制作に遅まきながら踏み込んでみることにしました。個人的には電子読書の本流は電子ペーパーの専用端末だと思っていますが、ソニーReader がなかなか EPUB3 に対応してくれなかったので、しびれを切らして手持ちの iPad を相手に悪戦苦闘してみた次第です。

 素材は例によってルビと外字だらけの鏡花。『短編選世話編』に入れた「親子そば三人客」を切り出して、inDesign CS5.5で EPUB に書き出すところからスタート。書き出し設定はデフォルトのままで、フォントの埋め込みは外しました。それを Dropbox を介してiPad上の Kinoppyに読み込ませると、こんなことに。

 行がえらく詰まって、ルビが隣の行と重なってしまっています。文字化けもありますし、ページの流れも逆です。それによく見ると、行末がかなり不揃いです。これらを一つ一つ潰していく必要がありますが、EPUBファイルとは要するに、HTMLファイルと CSSファイルその他をまとめて ZIP圧縮したものとか。HTMLについてはテーブルタグをやり繰りしてレイアウトしていた昔の知識しかなく、CSSなんかはほとんど勉強せずに来てしまったので、ここからはほとんど手探りです。

 EPUBファイルの編集は、最初は解凍して中のCSSやHTMLをエディターでいじるという正攻法のスタイルで始めましたが、レイアウト的には単純な文章ものに複雑なCSSコーディングなどは必要なく、もちろんそんな知識もなく、また再度圧縮し、出来具合を見てまた解凍して訂正という手間にもうんざりして、結局は解凍・圧縮の手間のいらない Sigil をメインに使うことにしました。

 さて、まずはレイアウトに関する要素が収められているらしい template.css をのぞいてみます。いきなり目に飛び込んでくるのは、喜ばしき縦書き宣言、「writing-mode : vertical-rl;」ですが、ネットにはこれだけでは不十分で 「-epub-writing-mode : vertical-rl;」 や 「-webkit-writing-mode : vertical-rl;」を加えるべしと書かれていることが多いのですが、Kinoppyは最初のものだけで縦書きにしてくれているようです。

 それはともかく、ずっと見ていくと、本文のスタイルに関する次のような項目が出てきました。
font-family : “Hiragino Mincho Pro W3”, serif;
font-weight : 300;
font-style : normal;
font-size : 0.94em;
text-decoration : none;
font-variant : normal;
line-height : 1;
text-align : justify;
color : #000000;
text-indent : 0px;
margin : 0px;
 まずは、「line-height」で行送りを広げます。ルビのことも考えて、ここは2としました。次に「font-size」を少し大きく。Kinoppyはピンチイン・アンチアウトで自由に文字を拡大縮小できるという優れもので、特に必要のない変更とも言えますが、開いてすぐに読みやすいサイズであるに越したことはないので、適当に1.06emとしました。このemというのは、相対単位らしいのですが、ならば基準となる単位はどこに規定されているのか、私にはよく分りませんでした。

 ところで、最初の行にはフォント指定があり、inDesign がヒラギノ明朝Proを指定しています。Kinoppyには秀英明朝体をダウンロードして利用できる機能があって、iPadにもダウンロードしているのですが、この「親子そば三人客」のフォントはどう見ても、秀英体ではなくヒラギノです。フォントの埋め込みはしていませんから、このヒラギノはどこから来たのだろうと調べてみると、なんとiOS5にはいつの間にかヒラギノ明朝Pro Nが搭載されていたよう。inDesignで使っているのはヒラギノ明朝ProでPro Nではなく、厳密には同じフォントではありませんが、そこは融通を効かして?このきれいなフォントを使ってくれているようです。

 で、問題の文字化けは、このテキストでは「割」「雪」「燗」「音」「廻」で発生していて、inDesignでそれぞれに字形パレットで異体字を適用しています。他にも異体字を当てた字は多く、それらは基本字に変更されて問題なく表示されているのですが、なぜかこの5文字では化けています。とりあえず、inDesignで異体字の適用を外して作り直すことにします。(つまり、EPUB3ではユニコードにない異体字については当面は断念。SVGフォントで外字を表示できるとかできないとか、そんな話も聞えてきますが、それはこの先の課題とします)

 そして、行末の不揃い。CSSには「text-align : justify;」の記述があり、両端揃えの指定がちゃんとされています。ところがよく見ると、行末・行頭にまたがった熟語が、まるごと次行に送られてしまっているのです。どうも振られたルビが分割できないためのよう。inDesignでルビを付けた際、グループルビにしたのが原因でしょう。仕方なく熟語をすべてモノルビにして書き出し直しました。以上の作業を一つ一つ効果を確かめながら進めて行った結果がこれ。

 ようやく読みやすくなりました。頭にタイトルもつけてみました。ここまでは何とか自力で来たのですが、ページ送りの問題がまだ残っています。最初誤解していたのですが、上の「writing-mode : vertical-rl;」の「rl」は行送りの指定でページ送りではないようです。ググってみると、ページ送りの指定として<meta property=”page-progression-direction”>rtl</meta> と <spine page-progression-direction=“rtl”>というのが出てきました。とりあえず該当すると思われる個所に当てはめてみると、前者は効果ありませんが、後者でめでたくページ送りが右から左になりました。この辺は完全に泥縄式です。CSSをちゃんと勉強しなくちゃいけません。

 最後に、inDesignで書き出す際に表紙のカバー画像をつけ、さらにSigilで章の分割を行なって、冒頭のタイトルを扉扱いにします。ここも表紙と同じ画像を貼りました。Sigilのメタエディターでメタデータを付加してとりあえず完成です。素人が泥縄式に作ったいい加減な代物ですが、下にリンクしています。iOS版のKinoppyとソニーReader以外では未確認です。

 ところでKinoppyの使用感ですが、評判通りの使いやすいリーダーアプリでした。フォントの埋め込みには対応していないようですが、ダウンロードした秀英明朝やiOS内蔵のヒラギノ明朝で完成度高く縦書き・ルビ打ちのEPUB3が表示できます。使い勝手の面では、ピンチイン・アウトで文字を自由に拡縮して、好みの比率で固定できる仕組みは秀逸だと思います。また、文字組み面では、文中の約物は連続約物も含めて全角が原則になっているようですが、行末の連続約物は半角固定で、ぶら下がりも行なって禁則処理に対応しているように見えます。行頭の鍵括弧が半角固定でない分、私にはソニーReaderの文字組みよりも自然に感じられました。

 なお、紀伊国屋書店の電子書籍ストアには、KinoppyだけでなくソニーReaderからも直接(旧型はパソコンを介して)アクセスして本を購入することができます。逆にReader StoreはKinoppyに対応していませんので、スマートデバイスで読むことも考えた場合は、紀伊国屋書店をメインの電子書籍ストアにしておく方が便利かもしれません。ただし、品揃えはどのストアもまったく貧弱なものですから、出版デジタル機構によってスキャン画像貼り付けでない質の高い書籍データ(となればもちろんEPUB)の蓄積が一気に進むことを期待しています。

 親子そば三人客

 親子そば三人客(フォント埋め込み版・ソニーReader旧型用)

コメント

ソニーReaderのEPUB3を試す

 ついに来たソニーReaderのEPUB3対応ですが、ニュースには「固定レイアウト型のEPUB電子書籍に対応」などと書かれていて、限定的な対応のようなニュアンスも。リフロー型の電子書籍はサポートされていないのでしょうか。期待とともに不安を感じつつ、さっそく愛用のPRS-T1とPRS-350をアップデートして、その真偽を確かめてみました。

 実は先日来、ソニーReaderのEPUB3対応が遅いのにしびれを切らして、最近評判のいい紀伊国屋書店の iOS・アンドロイド向け電子書籍アプリ「Kinoppy」を相手に、EPUB3ファイルを試作していた所でした。そこに今回の発表です。渡りに舟と、試作した鏡花の「親子そば三人客」のEPUB3ファイルをReaderに読ませてみました。結果はこんな具合。


 上がPRS-T1、下がPRS-350。両方ともちゃんと縦書き・ルビ打ち表示をしています。立派なもんです。これでついにグローバルでオープンなフォーマットに対応した端末を私たちは手に入れました。フリーテキスト、オリジナルな創作、なんだってこれからはこの共通のフォーマットで自由に、そして質高く版行できます。それを、専用端末ではソニーReader、iOSとアンドロイドではKinoppyがしっかり表示してくれます。続く端末・アプリも続々現れるでしょう。そうならないと日本の電子書籍はおもしろくなりません。

 ただし、最初のバージョンですので、もちろん気になることもあります。ご覧のように旧型のPRS-350はゴシック書体で表示されています。XMDFや.bookでは明朝体(たぶんイワタ明朝系)で表示されるのに、EPUBでは読書に適さない書体になってしまいます(そして、このフォントのせいか、一部文字化けも)。一方、PRS-T1では他のフォーマットと同じ筑紫明朝(たぶん)で表示され、文句はありません。

 PRS-350のフォント表示をなんとかできないか、ということで思いついたのは、以前 EPUB2を試した時に有効なのを確認したフォントの埋め込み。inDesignからフォントの埋め込みにチェックを入れて、もう一度 EPUBを書き出し、これを両機に読ませてみました。それがこれ。


 埋め込んだヒラギノ明朝で表示されました。PRS-T1の方もヒラギノになって、個人的にはこっちの書体の方が好みですので、大満足です。ただフォントを組み込んだことによって、ファイルサイズは300KB程度から1メガ程度に膨らんでいます。

 もう一つ気になったのは文字組みの問題。ソニーReaderのEPUB3は、句読点を文中は全角、行末は全角または半角とかなり柔軟に扱っています。また、句読点+受け括弧は半角+全角、または半角+半角になっていて、たとえば約物はすべて全角で押し通している同じReader上のXMDFや.bookの文字組みにくらべて、ワンランク上という感じがします。ただ、気になったのが行頭の鍵括弧。なぜかこれだけはすべて半角取りの天付きなのです。行頭の、特に改行行頭の鍵括弧は1角取りが普通だと思うのですが、なぜこんな風にしたのでしょうか。特に小説では会話が多いので、不自然に半角上った会話の頭が気になります。

 それにしても、ソニーReaderのEPUB3は期待以上の出来だと思います。先日来、復興支援の名目で大きな補助金を受けることになった出版デジタル機構が話題に上っていますが、その「電子書籍フォーマットポリシー」なるものを見ると、EPUB3の「普及は時間の問題」としながらも「一般ユーザーが安心して使用できるビュアーが出現するまで、もうしばらくかかると予想される」として、EPUB3を統一フォーマットに据えることには及び腰な印象です。しかし、ここに来て、スマートデバイスにはKinoppy、専用端末にはソニーReaderという強力なEPUB3デバイスが登場したのですから、そろそろ肚を決めてEPUB3を中心とした電子化を押し進める時なのではないでしょうか。そして、私などもマイナーでニッチな書物にこだわる人間として、このオープンなフォーマットをどんどん活用していきたいと思っています。

Comments (2)

ソニーReaderのEPUB2を試す

 首を長くして待っているソニーReaderのEPUB3対応ですが、一向に音沙汰なし。もちろんパソコン上で使えるリーダーソフトは既に幾つか出ていますが、いま一つ触ってみる意欲がわきません。もとよりパソコンなんかで読書ができるはずもなく、ベンダーによって実装具合も違うようだし、どうせEPUBで苦労するなら、パソコンソフトなんかじゃなく、読書端末を相手にしたい。

 そんな次第で、とりあえず新しいソニーReader、PRS-T1が実装しているEPUB2.0の具合を試してみることにしました。組版の具合などあまり突っ込んだことを試しても、3.0ではどう変わるか分らないし、またそんな知識もないので、フォントの反映具合と、鏡花電子本ではポイントになる旧字の表示について確かめてみることにします。ネットではソニーReaderのEPUBはゴシックしか表示しないとか、いやCSSで設定すれば大丈夫とか、いやいや新しいリーダーではフォント指定が効かなくなったとか、いろんな話が交錯していますが、ほんとの所はどうなんでしょう。

 素材に使ったデータは、上のような一連の漢字。鏡花本を校正する時に使った新字→旧字のチェックリストです。鏡花本の入力で一番苦労するのはルビと旧字ですが、アドビのinDesignを使うとどちらもずいぶん楽になります。それでも、おとなしい書体が気に入ってHG明朝という古いフォントを使ってしまったこともあって、後から後から見落とした旧字が見つかり、検索で捜しては字形パレットで旧字あるいは異体字に置き換えるという作業を繰り返すことになりました(今もやっています)。これはそのチェックリストの一部を切り出してPDFで出力したものです。

 これをinDesignでEPUBに書き出してソニーReaderに読ませてみたのが次の画像。明朝あり、ゴシックあり、?ありで、変なことになっています。しかし、よく見ると矢印の左側の漢字はみんなちゃんと表示されています。しかもデータ通りの明朝体です。実はこの左側にはHG明朝を使っています。inDesignはEPUBを書き出す際、フォントの埋め込みとCSSでのフォント指定を行なってくれます。この部分はそれがきちんと反映されているようです。

 ところが右側はうわさのゴシック化けです。しかも読めてない部分も。左側と何が違うのか。ここには小塚明朝Pr6Nというのを使っています。ユニコードはもちろん、異体字にも対応しているという強力なフォントです。だからこそ、inDesign上では鏡花の漢字もほぼ完全にカバーできます。つまり、公開している鏡花PDFはHG明朝を中心に部分的に小塚明朝の交じった、フォントのチャンポン状態なのです。全部小塚にすればいいのですが、小塚の平仮名がちょっと気に入らない次第です。

 それはともかく、右と左と何が違うのか。HG明朝はTTF(トゥルータイプフォント)ですが、小塚はOTF(オープンタイプフォント)、とりあえずそれぐらいしか思いつかないので、試しにFontForgeというフリーソフトを使って小塚をTTFに変換してみました。そしてinDesignで小塚TTFを適用し直しEPUBに書き出したのが下の画像。どういうわけだか分りませんが、うまく明朝になりました。ソニーReaderのEPUB2.0は、フォントの埋め込みとCSSの設定で任意のフォントを表示することができる、ただしフォントによってはうまく行かない場合もあるというのを、とりあえず一つめの結果としておきます。

 次に旧字の表示の具合を見てみます。私の大雑把な理解では、EPUBにおける旧字というのは2種類あります。EPUBは文字コードとしてユニコードを採用していますが、そのユニコードの独自番号を持った旧字と持たない旧字です。独自番号を持った旧字は、当然ユニコードに対応したフォントを使えば問題なく表示できます。上の例でいえば、内・清・炭・強の旧字体で、ソニーReaderでも表示できています。一方、独自番号を持たない旧字、いわゆる異体字はそのままでは表示できないので、異体字セレクタという追加番号のようなものを付加して基本となる字と区別するようです。この異体字セレクタに対応したフォントはまだ少ないのですが、ここで使っている小塚明朝はその一つです。

 だからinDesignでは一番上のPDFのように思い通りに旧字を出力することができます。しかし、それをEPUB化してソニーReaderで読むと、一番下の姿・習・急・朝のような結果になり、旧字体は反映されていません。どこに問題があるのか、改善する方法があるのかは、今のところ私にはさっぱり分かりませんが、それよりも次のEPUB3.0へのアップデート後が気にかかります。ソニーリーダーで、というか、読書端末で異体字が選べないとすると、古典作品の本格的な器としての可能性は狭くなってしまいます。

コメント