プレビューに画像が見えたことと、配布するEPUBに画像が収録されたことは別の確認です。ルビも、入力記法が正しそうに見えるだけでは出力後の要素を保証しません。この記事ではテキストエディタ プレビューの確認を「人が画面で見る項目」と「パッケージを機械的に読む項目」に分けます。固定EPUBで実測したのは四章、ルビ四件、画像参照十二件と収録漏れ0件です。
四章から一つずつ代表箇所を選ぶ
全ページを漫然と眺める前に、章ごとの標本表を作ります。各行に章ファイル、ルビの親文字と読み、画像ファイル、記法、出力先XHTMLを書きます。今回の固定資料は四章で、各章にルビ一件と画像三件を配置しました。
代表箇所を先に決める理由は、出力後に見やすい成功例だけを選ばないためです。意図的に旧パスや難しい文字を含める場合は、それも期待結果を先に書きます。原稿を直す作業と検査する作業を分け、検査中に都合よく標本を変更しません。
プレビューは文章の意味と配置を目視する
画面のプレビューでは、親文字と読みの対応、画像の向きと代替説明、改ページの位置を人が確認します。ここで重要なのは、単に何かが表示されたかではなく、原稿の意図と一致するかです。ルビが別の漢字へ掛かっていないか、画像が隣の章と入れ替わっていないかを標本表へ戻します。
今回の自動記録は、実際のプレビュー画面を決定的に再現していません。したがって、表示サイズ、文字の重なり、スクロール位置、選択状態を確認済みとは扱いません。これらはアプリ版と画面キャプチャを添えた目視試験で補います。
EPUBを開きXHTMLとmanifestを対応させる
出力後はEPUBをZIPパッケージとして開き、各章のXHTMLを読みます。固定結果では四章にルビ要素が一件ずつあり、合計四件でした。画像参照は各章三件、合計十二件です。OPFのmanifestにも対応する画像十二件があり、参照先の欠落は0件でした。
件数が同じだけでは不十分です。各XHTMLの参照先をmanifest項目へ結び、実ファイルがパッケージ内に存在するか確かめます。別画像が十二枚入っていても標本表とは一致しません。章、参照名、収録名の三列を対応させます。
navとNCXで四章の順序を照合する
本文資源がそろっても、読む順序が崩れていれば完成ではありません。固定EPUBではnavとNCXを読み、どちらも四項目で同じ章順になっていることを確認しました。OPFのspineと各章XHTMLも結び、孤立した章や二重収録がないかを見ます。
ルビや画像の検査と目次順の検査は一つの合格欄へまとめません。画像が正しくても章順が誤ることがあり、その逆もあります。構造、資源、記法を三つの判定に分けると、再出力が必要な範囲を小さくできます。
表紙画像も本文画像とは別の役割として記録します。同じ画像ファイルを使う場合でも、表紙指定、manifestのproperties、本文からの参照を混同しません。表紙だけ直した再出力で本文十二参照が変わっていないことも照合します。
画像が見えるのに収録されない失敗を直す
プレビューがローカルの絶対パスを読めても、EPUB内の相対参照が壊れる場合があります。欠落が見つかったら、XHTMLの参照文字列、OPFの収録名、実ファイル名を並べます。大文字小文字、拡張子、階層の違いを一つずつ修正し、再出力します。
復旧後は、直した一章だけでなく十二参照を再検査します。共通設定の変更が別章へ影響する可能性があるためです。古いEPUBを上書きせず別名で残し、どの版の検査結果かSHAで区別します。
ローカル構造検査のvalidを保証へ広げない
固定検証では構造検査が valid=true でした。これは、その検査で対象にしたパッケージ構造が条件を満たしたという結果です。販売サイトが受理すること、すべての読書アプリが同じ見た目で描画すること、画像の権利処理が完了していることまでは示しません。
Rune Studioの公開資料ではMarkdownの画像やリンク、EPUB出力に関する機能が案内されています。公開情報は製品の対応範囲を知る根拠、今回の四章EPUBは固定標本の取得値です。二つの出典を混ぜず、未実測の端末表示は実機確認へ回します。
また、EPUBの構造が正しくても、校正上の誤りは残り得ます。読み仮名の選択、画像の内容、改ページの妥当性は著者または編集者が判断します。機械検査へ任せる項目と人が読む項目を先に決めれば、valid=true を文章品質の判定へ誤用しません。
最終表には目視とパッケージを別欄で残す
引き渡し表には、四章それぞれの目視結果、ルビ要素、画像参照、manifest項目、nav順、NCX順を書きます。自動検査で確定できたのは、四つのルビ、十二の画像参照、十二の画像資源、欠落0、navとNCXの四項目一致です。
プレビューの画面表示は未実測欄に残し、確認者が実際の画面で親文字、読み、画像、改ページを判断します。最後に別の端末で代表章を一つ開き、端末固有の差も記録します。目視の良さとパッケージの整合性を両方満たしたとき、初めて出力確認を完了できます。