‘未分類’ カテゴリーのアーカイブ

印刷会社としての「電子書籍」への取り組み

2012/03/30

なぜ印刷会社が電子書籍に取り組む必要が出てきているのか

オフセット印刷機

オフセット印刷機

このブログを始めるにあたって、まず、なぜ印刷会社が「電子書籍」に取り組む必要があるのかについて最初に書いておきたく思います。というのも、電子書籍関連のどのセミナーに行ってご挨拶をさせていただいても、「印刷会社です」と言うと意外そうな顔をされる方が多いからです。どうも「電子書籍は出版社の作るもの」との考えが一般的には根付いているようで、印刷会社で電子書籍と言うと「畑違い」との印象があるのでしょうか。

出版業界全てとは言いませんが、少なくとも私が所属している文芸・学術系の書籍出版業界においては、少なくとも技術的な側面に関して、「印刷会社」が電子書籍制作に正面から取り組まなければならない状況が出てきています。そうした状況は、書籍出版業界の伝統的な業界構造に根ざして生まれてきています。

印刷会社は「印刷をするだけ」の存在ではない

一般的な「印刷会社」のイメージは、コンクリートの床の上に設置された巨大な印刷機が朝から夜まで回り続け、大量の紙を四六時中吐き出し続けている、といったようなものでしょうか。そのイメージは決して間違いではありませんが、少なくとも書籍印刷系の印刷会社にとって、それは全体の業務の一部分に過ぎません。書籍印刷系印刷会社の中には必ず「書籍制作部門」があり、そこにはずらりと並んだコンピュータに向かってDTP組版ソフトを操作する数多くのオペレータの姿があります。著者が執筆し、出版社内の編集者によって編集され、まとめられた原稿は印刷会社内の組版オペレータの手によってDTP組版データとして加工され、実際に印刷できる状態となります

電算写植機

電算写植機

誤解しないでいただきたいのですが、こうして印刷会社の中で組版処理が行われ、書籍が制作されるのはなにもDTPが一般化してから起こってきた新しい業態ではありません。過去には、DTP組版ソフトをインストールしたコンピュータの代わりに「電算写植機」がずらりと並ぶ姿がそこにはありました。それ以前の時代には電算化以前の「写植機」、さらに時代を遡れば、「活版印刷」の設備がそこには存在し、職人の手によって文字通り鉛の活字を用いて版を組む「組版」が行われていたのです。つまり、書籍出版業界においては、出版社が企画と編集までを担当し、それ以降の技術的制作の部分は「印刷会社」が担当してきた歴史的な経緯があるのです。

もちろん、例外があることは承知しています。早い段階から社内に電算写植機を導入し、積極的に制作工程の内製化を模索してきた意欲的な出版社も存在しますし、現在、電子書籍関連のニュースで頻繁に名前が出てくるコンピュータ技術書系の出版社などのように、設立時にDTPが一般普及していた比較的新しい沿革を持つ出版社の多くは、社内に制作部門を持ち、原則として社内で印刷データの制作を行っているものと思います。ただ、こうした先進的な業態を持つ出版社は、おそらく書籍出版業界全体で見た場合には少数派です。多くの出版社は、依然として書籍の技術的制作の部分を印刷会社に委託している現状があります。

これがすなわち、「印刷会社が電子書籍に取り組まなければならない理由」の本質です。こと書籍制作の技術的側面の変化に関しては、それが紙書籍に関するものではなくても、印刷会社は本気で取り組まなければならないのです。

「印刷データ使用権」の問題

さて、仮に出版社が紙書籍を電子書籍化して発売しようと考えた場合、一番の障害となるのは何でしょうか。それはおそらく、「二次使用権利処理」ではないかと思います。現在の日本の著作権法における権利処理の煩雑さについては、私などがどうこう言うよりも専門の方による本※1を読んでいただいた方が良いかと思いますので割愛しますが、印刷会社との関係において問題になってくるのは電子書籍のもととなる「印刷データの使用権」についてです。

実は、特別な契約がない限り「印刷データ使用権」は出版社ではなく、印刷会社が所有しています。これは、印刷データは紙書籍を作成するための「中間生成物」であり、書籍そのものではないという判断から来るようで、裁判による判例も出ているようです※2。そうなってくると、出版社が印刷データを元として電子書籍を制作するには、「印刷データ使用権」を持つ印刷会社に交渉して印刷会社において電子書籍を制作させるか、もしくはその書籍の「印刷データ使用権」を買い取るか、といった手順が必要となってきます。(こういった部分の煩雑さを避けるために、早い時期から印刷データの引き取り契約等を考えてきた出版社が存在していたことも附言しておきます。)

前述した事情からわかるように、これまで社内で書籍のデータ制作を行っていなかった出版社が、「印刷データ使用権」を買い取ったとしても独力で印刷データを電子書籍化するのは難しく、必然的に制作の外注が必要となります。これは当然費用がかさみます。こうした事情も、現在電子書籍のタイトル数が伸び悩んでいるひとつの要因だと思います。(近々正式に発足する「出版デジタル機構」が、業務のひとつとして出版社と電子書籍制作会社の間の仲介を行うことを想定しているのは、こうした事情を踏まえた上でのことと推察しています。)

現在の一般的な書籍制作の流れ

↑クリックでポップアップ拡大表示されます

ここまでの話を読んで、出版印刷業界の内部にいない方の中には、素朴な疑問を持たれた方もおられるのではないでしょうか。すなわち、「印刷会社に入稿する前のテキストをもとに電子書籍を作成すればいいのでは?」という疑問です。これに関しては、「現実問題として、難しいと思います」とお答えしておきます。出版社から入稿された原稿のテキストがそのまま修正なしで印刷データになり、世の中に出て本になる……といったようなことはまず、ありません。私は10年以上出版印刷業界におりますが、一度もそのような経験はありません。初回入稿時のテキストはDTP組版データとして加工され、社内の仮出力用プリンタで出力されて(「ゲラ刷り」といいます)出版社に送られ、著者・編集者の手によって修正指示が入れられます。それが印刷会社に戻されて組版オペレータの手によって修正が反映され、ふたたび出力されて出版社に送られる……といった工程が最低でも3~4回は繰り返されるのが通常です。再版時に細かな修正指示が入ることもよくあります。

これは、大昔から続けられてきた書籍制作のワークフローであり、今後もそう簡単には変わりそうにはありません。つまり、世の中に出回る紙書籍の最新の原版はデジタルデータ的には印刷会社にある印刷用DTPデータの中にしか残っていないため、出版社が単独で電子書籍化を行おうとした場合、最新版の紙書籍をもとにして全テキストを再入力する必要が出てきます。200~300ページの平易な小説などならまだしも、500ページを超えるような専門書等でこれを行うのはどう考えてもコスト的に割に合いそうにありません。従って、「少なくとも既刊本からの電子書籍制作は印刷会社が考えるべき問題」といった結論に結びついてくるわけです。

このブログでは今後、電子書籍の制作を行う過程でどういった問題が発生してくるのかを、現場からの視点で書いてみようと考えています。印刷・出版・WEBなど様々な業界の方からのご意見をいただければ大変ありがたいです。また、電子書籍制作ソフトウェア・ビューア等を開発される会社の方に現場でのニーズを少しでも汲み取っていただき、早期に快適な制作環境が整うことを期待している部分もあったりします。今後、なにとぞよろしくお願いいたします。

※1 福井健策氏の『著作権の世紀―変わる「情報の独占制度」』(集英社新書)をおすすめしておきます。
※2 参考:http://www.tokyo-printing.or.jp/report/hanken.pdf

(2012.3.30)

InDesign→EPUB3用XHTML作成ワークフロー

2012/03/27

facebookの日本語EPUBマークアップ指針「JBasic」のグループで公開させていただいた関係者向けのInDesign CS5→JBasic08準拠のEPUB3.0用xhtml変換ワークフローです。こちらの詳細版になります。ご好評いただいたので一部補筆して再公開させていただきます。

テンプレート/変換スクリプト/サンプルコンテンツは以下のリンクからダウンロードしていただけます。

また、JBasicの資料はepubcaféよりあらかじめダウンロードした上でお読みください。

Indesign CS5作成環境はMac OS10.6、xml変換用スクリプトはWindows環境用です(Windows Vistaにて動作確認済)。ワークフロー/スクリプトを参照したことによって発生したコンテンツの破損等に関して弊社では責任を負いかねますのでご了承ください。

画像はクリックでポップアップ拡大表示されます。

1 InDesign CS5の元ドキュメントを準備します

旧バージョンのInDesignで作成されたコンテンツなどはInDesign CS5で開き、別名保存して準備を整えておきます。

2 すべてのスタイルをインポートします

段落スタイルパレットもしくは文字スタイルパレットのメニューから「すべてのテキストスタイルの読み込み」を選択し、段落/文字スタイルテンプレート「ID5XML2JBASIC08_StyleTemplate.indd」からすべてのスタイルをインポートします。

3 InDesignドキュメントを整備します

以下の形でInDesignドキュメントを整備します。

全ての行に段落スタイルを適用します。JBasic08では見出し(h1)のサイズは、「どのsection の下に置かれている見出しか」をcssが判断して決定する方針のようですので、部・章・節、どの見出しであっても全て同一の「見出し」スタイルをあてて構いません。カバー見出し、本扉見出し、メイン見出しの脇にサブ見出しがある場合などはそれぞれ別のスタイルをあてておき、JBasic08資料P22を参考に6でxml整形処理します。本文で複数のスタイルが混在するような場合は、適宜別のスタイルを作成して割り当てておきます。

InDesignの段落/文字スタイル設定でのインデント/文字修飾等の各種定義要素は書き出したコンテンツに反映されませんので、極論しますと「スタイルが当たっていさえすればよい」のですが、EPUB作成にInDesignを用いることの大きなメリットは「実際にどういった見かけになるか確認しながら作業を進められる」ことにあると思いますので、ある程度最終イメージに近い形でスタイル要素を定義しておくことをおすすめします。

必要ならばルビをつけ直します。ルビに関しては文字スタイルをつける必要はありません。なお、熟語ルビは自動処理で連続6文字までの置換に対応しました。6文字を越える場合は適宜分割してルビをふってください。

圏点/下線/下付き文字/上付き文字など文字修飾要素にそれぞれ文字スタイルを適用してください。文字サイズ・フォントなどを変更する部分にもそれぞれ文字スタイルを適用してください(全ての文字装飾に文字スタイルを当てます)。文字パレット等を用いてInDesign内で個々の文字に文字修飾を加えても、タグの割り当てをしない限り書き出したxhtmlファイルには文字修飾効果が反映されませんので、必ず「文字スタイル」を用いて文字修飾を適用するようにしてください。

画像は「ファイル名」を拡張子込みで記述し、段落スタイルを当てます。(/OEBPS/images内に画像が収納されていることを前提に10でパスを付加します)

外字は「ファイル名」を拡張子込みで挿入部分に記述し、文字スタイルを当てます。(/OEBPS/images内に画像が収納されていることを前提に10でパスを付加します)

改ページ行は改ページ用の段落スタイルを当てておきます10で変換した際、div.pagebreakタグを割り当てられた部分のテキストは10で電子書籍/webブラウザ上で表示されないコメント文に置換しますので、わかりやすく行内に「■改ページ(書籍○○ページ)■」などと入力しておいても構いません。

二倍ダーシなどの分離禁止処理は、ルビ文字にスペース1文字を入れたグループルビをあてて処理します。

太字部分内縦注横など、InDesignの仕様上同じ文字に複数の文字スタイルを適用できない部分に関しては、7で処理します。ここでは外側の要素(前述例の「太字」にあたる要素)のスタイルのみを当てておきます。

4 タグテンプレートからタグを読み込みます

「タグ」パレットメニューから「タグの読み込み」を選択し、タグテンプレート「ID5XML2JBASIC08_TagTemplate.xml」からタグを読み込みます。

5 スタイルに自動でタグを割り当てます

「タグ」パレットメニューから「スタイルをタグにマップ」を選択し、全ての段落スタイル及び文字スタイルに自動でタグを割り当てます。各スタイルに適合するタグがなかった場合は適宜作成した上で割り当てます。

なお、「section.chapter」「p.authorname」のように「基本タグ+区切り文字+class名」の書式でタグ名を書くことで、10の変換時に自動処理で「class」および「epub:type」が付加されるようにスクリプト処理します。区切り文字には「.」および「-」および「_」が使用可能です。class名は任意ですが、可能な限りJbasic08内で規定されている値を用いることとします。なお、互換性を考えると全角文字は使わない方が無難です。

自動処理でclass およびepub:type の付くタグ
body section aside article nav h1 h2 h3 h4 h5 h6 hgroup a
自動処理でclass のみが付加されるタグ
p blockquote span em strong i u small figure figcaption div header footer ol ul li table tr td

6 「構造」ウィンドウでsectionなどを割り当てます

InDesignの「構造」ウィンドウを表示させ、sectionなどの構造タグを割り当てていきます。ウィンドウ内に一覧表示されたタグ内で目的の構造タグに含めたいタグを全て選択し、「構造」ウィンドウのドロップダウンメニューもしくはコンテキストメニューから「新規親要素」を選択して割り当てます。

構造タグの種類そのものを変更したい場合は、「タグの要素」を選択して変更できます。構造タグを削除したい場合は「要素のタグを取り除く」を選択して削除できます。

テキストの中身を確認しながらタグを付加したい場合には「ストーリーエディタ」を使うことで効率的に作業を行うことができます。ストーリーエディタはテキストフレーム内にカーソルを表示させた状態で「編集」メニュー→「ストーリーエディタで編集」で呼び出すことができます。ストーリーエディタ上でタグを付加したい部分を選択し、「タグ」パレットで付加したいタグをクリックすることで構造タグ付けが行えます。

ストーリーエディタ上で誤ってタグを付加してしまった場合には、あらかじめ該当部分のテキストを選択した状態で、コンテキストメニューから「テキストのタグを取り除く」を選択することでタグを削除できます。

ここで割り当てる必要のある構造タグ要素
body section blockquote aside article nav figure hgroup header footer dl ol ul table div
段落間区切り(div.breaksymbol)および改ページ(div.pagebreak)は10で自動処理するため除きます

7 文字スタイルを重ねて適用できなかった箇所にタグを割り当てます

太字部分内の縦注横、行間注内の圏点などは、InDesignの仕様上同じ文字に複数の文字スタイルを適用できないため、4で自動でタグ付けができません。該当する文字を選択し、「タグ」パレットを使用して個々にタグを割り当てます(文字列を選択している状態で付加したいタグをクリックすればOKです)

8 XML属性を付加します

「構造」ウィンドウのタグ一覧から属性を付加したいタグを選択し、ドロップダウンメニューもしくはコンテキストメニューから「新規属性」を選択して各タグにid、name などのxml属性を割り当てます。「a」タグのリンク先、「figure」タグのid などはここで割り当てます。

ここまでの情報を適用済のサンプルドキュメント(TaggingSampleDocument.indd)を同梱しておきますので、ご参照ください。

9 XML ファイルを書き出します

「ファイル」メニュー「書き出し」→フォーマット「XML」でXMLファイルを書き出します。
書き出し時のオプションは以下の通りです。
『一般』タブ
「改行、空白、特殊文字を再マップ」をチェック、他の全てチェックボックスは全てチェックしないでください。エンコーディングは「UTF-8」です。

「改行、空白、特殊文字を再マップ」をチェックしないとテキスト内の変な位置で改行されてしまい後処理に手間がかかりますので、チェックして改行なしで出力しスクリプトで改行を処理します。

『画像』タブ
全てチェックしないでください。

『オプション』タブ
「ルビをXMLとして書き出し」をチェックしてください。

10 書き出したファイルを変換します

Windowsマシン上でスクリプトと同一のフォルダに入れたバッチファイル「ID5XML2Jbasic08.bat」に9で作成したxmlファイルをドラッグ&ドロップするとJBasic08準拠のxhtml元データに変換されます。(複数ファイルのドラッグ&ドロップには対応させていませんのでひとつずつ変換してください。)ルビ等はここでEPUB3準拠のタグ形式に置換されます。
なお、フリーのWindows用Perl環境、ActivePerlのインストールが別途必要となります。

ActivePerlはActiveState社ホームページ(http://www.activestate.com/)からダウンロードできます(トップページからPRODUCTS→ActivePerl→PPM/Perl Modules→Free Downloadsと進んでください)。
追記:Mac環境用置換スクリプトも作成しました。フリーで利用できるテキストエディタ「mi」にて作成したxmlファイルを開き、スクリプトを実行することでタグが置換されます。Mac OS 10.7/mi 2.1.11r1にてテスト済です。スクリプトは以下のリンクよりダウンロードしていただけます。

11 xmlファイルをepubに整形処理します

書き出したコンテンツの<body>〜</body>をコピーし、JBasic08用テンプレートに貼り付けるなどしてepub に整形処理します。テンプレートファイルはepubcafé(http://www.epubcafe.jp/)から単体で入手できるほか、電子書籍オーサリングソフト「Fusee β」(フューズネットワーク)にテンプレートとして含まれていますので、そちらを利用してepub3.0コンテンツの作成を行うことができます。

追記1:段落行頭字下げをcssのtext-indentで行っている場合に文中に外字画像を挿入すると、「何故か外字が1文字ずれてとなりの文字と重なる」現象がmac版safariおよびgoogle chromeで発生します。その行のみタグを<p style=”text-indent:0”>としてtext-indentによる字下げを打ち消し、全角スペースで行頭字下げを行うことで回避できます。ただしxhtml内にcssを記述するのはあくまで緊急回避措置で、表示と構造を分離するというcss/xhtml本来の意義からも、多用することは避けた方が賢明と考えています。

追記2:外字イメージにルビをふるのは自動では無理ですので、テキストエディタにて後処理してください。スクリプト改訂により対応しました。下記参照。

追記3:リンク対照文字にルビが振られているとリンクが正常に働かない現象がsafariで起きます。注へのリンクを合印で行うことでとりあえずは回避可能です。

追記4:Adobe Digital Editions Preview 1.8.1では熟語ルビが正常に表示されません(1文字目のルビだけ表示される)。全てモノルビとして処理することで回避できます。また、外字イメージ上のルビも表示されないようです。

追記5:ibooks で明朝体で表示するためには、META-INFに「com.apple.ibooks.display-options.xml」を入れる必要があります。

(2011.12時点での情報です)

InDesignはCS3以降でEPUBの直接書き出しにも対応しているのですが、正直書き出されるXHTMLやCSSが綺麗とは言い難く、後編集の手間がかなり大変です。他のEPUB3簡易制作ソフトも試しましたが、ほぼ似たような状況です。Sigil、Fusie等を使用して手でタグを打ち込めばそのあたりの問題はクリアされますが、HTML/CSSの知識が個々に求められることになりますので、印刷系のオペレータにとってはかなり敷居が高くなってしまいます。可能であればすでに各オペレータが習熟済みのInDesign等を利用し、ワープロに近い感覚でEPUBを制作できれば良いと考えました。

そこで、InDesignのXML書き出し機能とPerlを組み合わせて、テキストエディタでの後編集の必要がほとんどない形に整形されたXHTMLのソースを取得し、別に用意しておいたCSSのファイルと組み合わせてEPUB3のコンテンツを作成する形でEPUB3を制作するフローチャートを考案してみたのがこちらになります。

整形されたXHTMLでEPUBを制作しておきませんと後々データの再利用の際に途方に暮れることにもなりそうですので、本気でビジネスとしてEPUB3コンテンツの制作を考えるならば、おそらくそのあたりは結構重要かと思います。EPUBに限らず、電子フォーマットはフォーマットとしての「賞味期限」は短いと考えた方が良いため、書籍のような長期間にわたって販売されるコンテンツの場合はデータ再利用を最初から頭に入れておくことが必要になると感じております。

また、InDesignのXML書き出し機能を利用する方式のメリットとして、「書き出せるのはEPUB用XHTMLに限らない」ということが挙げられます。XMDFなど他の電子書籍形式も内部的には全てXMLですので、読み込むテンプレートと置換スクリプトを差し替えるだけで全て同じ流れでコンテンツを制作できます(テスト済みです)。もちろんオーサリングソフトで最終的な編集は必要なのですが、かなりの省力化が可能です。2012年4月に発足する出版デジタル機構向けの中間フォーマットもこの流れで作成可能なのではないかと考えております(3月末現在、まだ仕様未公開のため確かなことは言えませんが・・・)。

なお、ここでInDesignを用いて行っている作業のかなりの部分を、InDesignと連携してテキスト編集を行うためのソリューション、「Adobe InCopy」で行うことができそうです。InCopyは1ライセンス新規購入でも3万円程度のソフトですので、InDesignと組み合わせて用いることで比較的安く多人数での電子書籍制作環境を構築できるかも知れません。InDesignとInCopyを連携させたXHTMLデータの制作については、いずれこのブログ内でレポートするつもりでおります。

(2012.3.27)

InDesignで一度ルビを入力した後、ルビを削除すると残ってしまう「空のルビタグ」を削除するためにスクリプトを改訂いたしました。

(2012.4.24)

外字のルビ処理に対応するためにスクリプトを改訂いたしました。ドキュメント内外字ファイル名にグループルビを振っておくことで、外字ルビとして自動置換出力します。

(2012.8.07)

Mac用置換スクリプトで「<p.indent>〜」等の記述が正常に変換されないケースがあった問題を修正しました。

(2012.9.06)

step2でスタイルを読み込む際に、スタイルパレットサブメニューの「すべてのテキストスタイルの読み込み」ではなく、「タグ」パレットサブメニューの「スタイルをタグにマップ」内の「読み込み」ボタンを利用して読み込むことで、段落・文字スタイル情報/タグ情報/各スタイルとタグの紐付け情報が一括で読み込まれるようです。テンプレートに多数のスタイル・タグを設定している場合かなりの時間節約になります。

(2012.10.10)

収録サンプルを改訂しました。また、電書協仕様のサンプルを併録しました。

(2012.10.29)

プロフィール
Jun Tajima

こちらにて、電子書籍&Web制作を担当しています。
このブログは、EPUB3をはじめとした電子書籍制作担当オペレータからの、「電子書籍の制作時にたとえばこんな問題が出てきていますよ」的な「現地レポート」です。少しでも早い段階で快適な電子書籍閲覧・制作環境が整うことを願って、現場からの声を発信していこうと目論んでおります。

当ブログ内の記事・資料は、私の所属しております組織の許諾を得て掲載していますが、内容は私個人の見解に基づくものであり、所属する組織の見解を代表するものではありません。また、本ブログの情報・ツールを利用したことにより、直接的あるいは間接的に損害や債務が発生した場合でも、私および私の所属する組織は一切の責任を負いかねます。