チェック内容 ①文字コードがUTF-8でないものを検出する ②BOM付きで保存されているファイルを検出する ③META-INF内に「container.xml」以外のファイルがあった時、そのファイル名を抜き出す ④【opfファイルのチェック】 1) タイトル、タイトル読み、著者、著者読み、著者役割、著者出現順番、JDCNなどのメタ情報を抜き出して目検する。制作会社にはcsvの書誌データを渡しているので、ほとんどミスはないので、チェックのためというより、別のアラートが書き出されたときどの作品か特定するメモ代わりでもある。 2) リフローでのページめくり方向のチェック 3) フォルダ名がIDの場合、opf内のIDとの照合 4) opf内の作品タイトル名と各xhtml内とナビゲーションファイル内のタイトルとの照合 5) 固定レイアウトのメタ情報のチェック ・ページめくり方向は以下の2箇所にある ・表示ページは中央、見開きの時の右、左ページの指定は、ページ削除などの修正をした後、忘れがちなので、チェックは必須。 ⑤【論理目次内のチェック】 1)
    1. 以外のタグは使えないRSが多いので、チェックする。本文にある目次から生成する場合、外字用が残っていたり、tcy指定がそのままの場合があるので、併せてチェックする。 2) ユニコードからSHIFT_JISに間違って変換して、SHIFT_JISにない文字が「?」として出力されることがあるので、全角文字中の「?」をチェックする。 3) 論理目次の表示順は本文のxhtmlの順番にしないとKindleでエラーになる。例えば、「はじめに」が本文中の目次ページより前に位置するのに、論理目次中では「目次」「はじめに」の順番になるなど。順番を確認している。 4) 論理目次内landmarksのチェック ・landmarksが記載されていないことがある ・idなど必要事項が抜けていることがある。 ・「epub:type="toc"」はKindleでの論理目次表示のために必要なので、目次があるものはチェックする ・目次など参照先のファイル名が間違っていることがある ・固定レイアウトでは、iBooksの立ち読み開始位置を指定する「epub:type="bodymatter"」を指定しているが、抜けていることがあるのでチェックする ⑥【cssのチェック】 1) 「作品別カスタマイズ領域」への追加スタイルを抽出し、記述が間違っていないかどうかチェックする。 2) スタイル名のスペルが間違っていることがあるので、cssにないスタイル名を抽出する。 3) 電書協ガイドに記載はあっても、まだ使ってはいけないスタイルを使っていたら抽出する。 ⑦【画像のチェック】 1) jpegファイルの破損チェック 2) jpegが「CMYK」「GrayA」「CIELab」で保存されていたら、保存しなおす指示を出す 3) jpegが「baseline」以外で保存されていたらbaselineで保存しなおすように指示を出す 4) 画像の縦横のピクセル数と、xhtml内に記載の画像サイズが同じかどうかチェックする。 5) 画像の解像度が400万画素を超えるものはiBooksで配信できないのでチェックする。 6) pngが透過でない場合、透過にするかどうか文脈で判断するため抜き出す。 7) pngが透過の場合、Kindleで表示できないカラーテーブルのものを検出し、保存し直す。 8) alt内に記述があるものを抜き出しチェックする。制作会社によっては、画像の読みではなく、文字コードやJIS X 0213以外の文字が入っていたり、メモ代わりに使っていることがあるので。 ⑧【xhtmlファイル内のチェック】 1) xhtmlの1ファイルサイズが230KBを超えているものはRSによってはバグになるので、ファイルを分割する。 2) タグ以外に使われている「<」(<)と「>」(>)、そして「&」を検出し文字実体参照とする。 3) ページ全体の背景色はRSによってhtmlまたはbodyに指定しなければならないので、安全のため両方に指定している。どちらかへの指定もれをチェック。 4) ビューワによって、ユーザーが縦横を切り替えられるようになったので、レイアウト表示が崩れることがある。その対策として、表紙ページのすぐ後にレイアウト表示に関する断り書きを挿入している。制作の時に、作品の縦組み・横組みに応じて断り書きを入れているとは限らないので、組み方向に対応しているかどうかチェックする。 5) 縦書きの場合、扉ページで章タイトルなどを縦書きにしてページの中央に配置する場合(「電書協EPUB3制作ガイド」p40参照)、横組みページにdivで縦書き指定をするので、様々な危険が伴う。安全に使うために、いくつかチェックポイントがある ・1ページ大の画像など大きな画像を使っている場合はエラーになるので、画像ページに指定しなおす ・以下の場合は、縦組みの縦書きページに変更指示を出す →1ページ大でなくても、スマフォなど画面が小さいときに次ページに送られそうなサイズの画像が使用されている →タイトル、サブタイトル合わせて3行以上 →タイトル・サブタイトル以外の文字数の多い段落が入っている 6) ルビ付き文字の親文字が全角10字以上、半角20文字以上の場合、親文字を分割するように指示を出す ◆半角スペースがに隣接して入っている場合、この半角スペースは無視されるので半角スペースはルビ指定の外に出すよう指示を出す 例)Hello ハローWorldワールド →「Hello」の後の半角スペースが消え「HelloWorld」となる。 【修正は以下の2通り】 Hello Worldハローワールド Helloハロー Worldワールド 7) 傍線、下線は「text-decoration: underline;」と「text-decoration: overline;」では縦書きにした時に左右どちらに表示されるか不安だったので、片側罫線を使って、以下のようにスタイルを追加して使っている。 ・bosenは主に全角文字、kasenは半角文字に使っているが、使い方を間違っていることもあるので、チェックしている。 ・罫線を使っているので、spanでインライン指定しかできないので、divやhタグで使っているものを検出している。 ◆参考までに、以下のようにスタイルを追加している。 /* 傍線 横組で下、縦組で右側に表示される ---------------------------------------------------------------- */ .hltr .bosen, .vrtl .hltr .bosen { border-width: 1px; border-style: none none solid none; } .vrtl .bosen, .hltr .vrtl .bosen { border-width: 1px; border-style: none solid none none; } /* 下線 横組で下、縦組で左側に表示される ---------------------------------------------------------------- */ .hltr .kasen, .vrtl .hltr .kasen { border-width: 1px; border-style: none none solid none; } .vrtl .kasen, .hltr .vrtl .kasen { border-width: 1px; border-style: none none none solid; } 8) 欧文カンマの後の半角アキをチェック→半角アキがない場合はアキのもれか、カンマがアポストロフィーとして代用された可能性がある。 9) 半角欧文中の不要な縦中横指定をチェック→横転しているべき3文字以上の半角欧文文字列中で、機械的につけた縦中横指定が残っている場合がある。 10) 行末揃えで21文字以上使用のものをチェック 11) spanの入れ子でtcyが外側に指定されるとtcyが効かないので、tcy指定を内側にするか、同じspan内に同時指定する。 12) 「sub」「super」「kogaki」「kuten-okuri」と「tcy」の入れ子と、2文字以上の「tcy」を併用しているものをチェック 13) 「sub」「super」「kogaki」に11文字以上使用しているものをチェック→行末にかかったときに、途中で折り返すことができるかどうかわからない。折り返さない場合、次行に長い文字列が送られると、前の行が均等割付ですかすかしてしまうので、文字数を制限している。 14) 「sub」「super」「kogaki」「kunten-okuri」の中にruby指定していると表示が崩れるRSがあるので、使用しないように警告する 15) inverse内に圏点またはルビがあると一部のRSで表示されないのでチェック 16) 圏点指定の内側に画像外字があると圏点が表示されないので圏点指定をルビにする 17) 圏点指定の内側にある約物のチェック→インデザインでは、約物に圏点がかかってしまっても、出力するときに約物にかかった圏点部分は消せるらしい。しかし、電子書籍用のソースデータには約物にかかったままになるので、チェックが必要となる。 18) 「h-indent」は「text-indent」と「padding」(余白)を組み合わせて指定しているので、「h-indent」の内側にボックス指定やマージンを指定すると「h-indent」が効かなくなるので、チェックが必要。 19) 「h-indent」とトップの余白(padding-top)を同時指定しているものをチェック 20) 画像データにfit指定のないものをチェック 21) widthとheightを同時に指定している場合、どちらかの値が「auto」ならOKだが、どちらもサイズをしていると画面サイズによって画像が変形することがあるのでチェック 22) line-throughをdivで使用しているとline-throughが効かないのでspanに指定しなおすようにする。 23)
      にclass指定が効かないRSがあるのでチェック。区切り線の太さや色を指定したい場合は片側罫線を使う。 24) 仕様にないタグ()をチェックして対応するスタイル名に変更する(※ブラウザによって表示結果が異なることが予想されるためスタイルで指定する) 25) ソースデータを管理しやすくするため以下のチェックをおこなっている。 ・
      を空行以外で使っている場合をチェック ・
      または

      だけの空行をチェック→空行は


      で指定する。 ・不正なシステム改行をチェック→段落の途中で入っていることがある。 ・スペースだけの空行をチェック ・

      で囲まれていない行をチェック ・空のclass指定をチェック ・空タグをチェック ・

      など行末で使われる閉じタグの後にシステム改行のないものをチェック ・タグ終了の前の不要なスペースをチェック ・タグ中の余分なスラッシュのチェック 26) 分離禁止文字が沢山連続すると表示エラーとなることがあるので、以下のような処理をしている。ユニコードが文字ごとに分離の仕方を規定しているので、以下のようになる。 ・「─」「―」「—」が4文字以上続く場合、「word-break-break-all」を指定して分離できるように指示する ・「…」「‥」が4文字以上続く場合、「word-break-break-all」と「line-break-loose」を指定して分離できるように指示する 27) id内にアルファベット・数字・アンダーバー・ハイフン以外を使っているものをチェック 28) 表紙ページだけのチェック ・「epub:type="cover"」があるかどうかチェック ・表紙画像ファイル名が「cover.jpg」以外のものをチェック ・表紙ページの綴じ方向が「hltr」でないものをチェック ・表紙ページの「epub:type」の値が「cover」でないものをチェック ・のclassの値が「cover-page」でないものをチェック 29) body直下のdivの値と扉ページと画像ページの組み方向のチェック 30) bodyの直下に
      があるかどうかチェック 31) 画像だけしかないのに「image-page」になっていないものをチェック 32) 縦書き用引用符「〝(U+301D)」「〟(U+301F)」と横書き用引用符「“(U+201C)」「”(U+201D)」が入れ替わっていないかどうかチェック 33) 横書きでのtcy指定のチェック→ビューワの縦横切り替えで横書きが縦書きになったときに表示に影響する縦中横指定はとる 34) 文字チェック ◆縦書き時の文字の向きは「KADOKAWA-EPUB PORTAL」(http://kadokawa-epub.bookwalker.co.jp/download)に「1. KADOKAWA-EPUB 制作仕様(グローバル)」があり、これをダウンロードすると「添付資料」というフォルダがあり、この中に素晴らしい資料が入っている。 ◆以下はそれを参考に作成したチェック項目。 ❖正立の場合はtcyを指定して、横転の場合は無指定にする文字。 −≠≦≧°′″∈∋⊆⊇⊂⊃∪∩⊄⊅⊊⊋∉∅¬⊖∥∦≡≒≪≫≢≃≅≈≶≷⤴⤵∓⧺⧻⋚⋛€‿˥˦˧˨˩∮∟⊿¤¦ª¯²³¸¹º˘˛˝ˈˌ ❖正立の場合はtcyを指定して、横転の場合は画像外字にする文字→ビューワによって表示がまちまちだが、tcyを指定すると確実に正立させることができる文字のリスト。 ¨¢£⇒⇔∀∃∠⊥∂∇√∽∝∫∬↔Ŷ↗↘↖↙⇄⇨⇦⇧⇩␣⏎ˇ˙☞‖±÷∞∴⌅⌆⌒∵‰†‡ℵℏ℧⎾⎿⏀⏁⏂⏃⏄⏅⏆⏇⏈⏉⏊⏋⏌⁑⁂℡§ℓ ❖横転の場合は無指定、正立の場合はtcy指定、または全角の対応文字に置き換える文字。 #$¥%@ ❖正立、横転どちらも画像にする文字。 ̥̬̹̜̟̠̩̯̆̋́̄̀̏̌̂̈̽͡˞̴̤̰̼̝̞̘̙̪̺̻̃̚ ❖「;」は、正立横転どちらも画像、欧文文脈中の横転では半角にする ❖「‘」「’」は、正立では画像、欧文文脈中の横転ではそのまま使用 ❖バックスラッシュはフォントによって字形が変わるので、横書き、縦書き、どちらも画像にする ❖合成文字(゚̀́˩˥˥˩)は画像にする ❖〓のチェック。正立(横書きと同じ向き)では"tcy"(縦中横)指定をして、横転では画像にする→無指定時にRSによって向きが変わるため 35) uprightは使わず、文字を正立させるにはtcyを使っているので、uprightを使っている場合はチェックする。 36) 「∧」論理積(and かつ)、「∨」論理和(or または)が、小なり大なり(<>)代わりにtcy指定で使われていることがある。正しい使い方がどうかチェックする。 37) 「〳」「〴」「〵」は行末で分離してしまうので画像にする。ルビ文字では文字にしてグループルビにする 38) 正立の場合はtcyを指定して、横転の場合はsidewaysを指定する文字「©」「®」。「©」と「®」はKoboでだけ正立してしまう。Koboではsidewaysが効くので、sidewaysで横転させる。sidewaysは他のケースでは使用しないほうが無難。 39) ギリシャ文字とキリル文字は、1文字の場合はtcyを指定して正立させ、2文字以上の場合は無指定で横転させる(ただし、Kindleだけは正立となる) 40) 縦中横tcy指定文字のチェック ❖1文字と2文字の場合はtcyを指定して正立させ、3文字以上の場合は無指定で横転させる文字。 a-zA-Z¿¡«»ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿĀāĂ㥹ĆćĈĉČčĎďđĒēĘęĚěĜĝƓɠĤĥħĪīĴĵĹ弾ŁłŃńŇňŋŌōŐőŒœŔŕŘřŚśŜŝŞşŠšŢţŤťŪūŬŭŮůŰűŹźŻżŽžǂǍǎǐǑǒǔǖǘǚǜḾḿǸǹǽɐɑɒɓɔɕɖɗɘəɚɜɞɟɡɤɥɦɧɨɬɭɮɯɰɱɲɳɵɹɺɻɽɾʁʂʃʄʈʉʊʋʌʍʎʐʑʒʔʕʘʝʡʢːˑὰάὲέ ❖2文字のtcy(縦中横)指定に使ってはいけない文字が混じっていないかどうかチェック 【以下の文字以外の文字】 !"#$%&'\(\)*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\x{005b}\x{005c}\x{005d}^_`abcdefghijklmnopqrstuvwxyz{|}~¿¡«»ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿĀāĂ㥹ĆćĈĉČčĎďđĒēĘęĚěĜĝƓɠĤĥħĪīĴĵĹ弾ŁłŃńŇňŋŌōŐőŒœŔŕŘřŚśŜŝŞşŠšŢţŤťŪūŬŭŮůŰűŹźŻżŽžǂǍǎǐǑǒǔǖǘǚǜḾḿǸǹǽɐɑɒɓɔɕɖɗɘəɚɜɞɟɡɤɥɦɧɨɬɭɮɯɰɱɲɳɵɹɺɻɽɾʁʂʃʄʈʉʊʋʌʍʎʐʑʒʔʕʘʝʡʢːˑὰάὲέ ❖3文字のtcy(縦中横)指定に使ってはいけない文字が混じっていないかどうかチェック 【除外する文字】 0-9!"#$%&'()*+-./ 41) 全角文字でのイタリックはiBooksでは使えないので、使っているものをチェック 42) 「“(U+201C)”(U+201D)」は縦書きでは「〝(U+301D)〟(U+301F)」に変換する。半角欧文内では「"」に変換するか、字形を変えない場合は画像にする。Kindleでは縦書き時「〝」「〟」に字形が変更されるので、字形を変えない場合は画像にする。 43) 縦書きで全角の「.」と「,」を検索。「。」と「、」への変換もれの可能性があるため。 44) 半角欧文中の数字やアルファベットの縦中横指定をチェック。縦書きの参考資料などで横転しているべき文字に部分的にtcy指定がされていることがある。 45) ○(丸)、〇(ゼロ)、◯(合成用)をチェック ・正確に検索できなくなるので修正する 46) 全角マイナスをチェック 47) 全角ダッシュが二つ以上連続するものをチェック ・フォントによって文字の間に隙間が入ることがあるので「─(U+2500)」に置換している 48) 半角カタカナ、半角句読点、半角カギ括弧、半角「・」(U+FF65)をチェック→対応する全角のものに置き換える 48) スペース「\x{2002}」と「\x{2003}」は半角または全角スペースに置き換える。 49) JIS X 0213外の文字のチェック 50) 「!?‼⁇⁈⁉!?」の後のアキをチェック 51) 行頭の半角アキ2つを検索 52) 行中の不要な半角アキを検索 53) 行末の不要なアキを検索 54) 行頭アキなしをチェック 55) 不要な行頭スペースをチェック 56) 不正改行箇所のチェック