章頭を狙った位置から始める!EPUB改ページ記法の使い方

章頭を狙う改ページは、空行を増やす操作とは異なります。epub 改ページを入れる前に、対象行と直後の文章を控え、挿入後の原稿記法、生成XHTML、スタイルの順で確認します。目視だけでは、改ページと偶然の画面折返しを区別できません。

第1章2行目へ記法を1件挿入した

3章の合成標本で、第1章2行目に改ページ命令を実行しました。応答は変更ありで、原稿には《《|Page Break|》》が1件残りました。同じ章のルビはXHTMLで1件に変換されています。EPUBはspine6、nav3、NCX3、valid=trueでしたが、生成XHTMLで文字列page-breakを探した件数は0です。

したがって、今回の証拠だけで「改ページが出力へ反映された」とは判定しません。変換が別名のクラスやCSS規則を使う可能性を調べ、挿入直後の文に対応するXHTMLを特定します。対応要素がなければ不合格として、記法の仕様と出力設定を確認し直します。

合格済みなのは原稿への挿入1件、ルビ1件、3章のパッケージ構造です。章頭のページ境界は未確認で、全リーダーの同一表示も対象外です。保留を明記しておけば、構造検査の成功を視覚結果へすり替えずに済みます。

章頭の固有語を目印に変換位置を探す

改ページ記法の直後へ、ほかにない短い確認語を置くと生成XHTML内の位置を特定できます。その語の直前に改ページ相当の要素やクラスがあるか、リンクされたCSSに境界指定があるかを確認します。page-breakという旧来の語だけでなく、break-beforeなどの候補も仕様に沿って調べます。

三章標本の構造合格とルビ一件の変換は、検査対象のEPUBを識別する助けになります。それでもページ境界を直接示さないため、Macの読書画面で章頭から始まることを見届けるまで保留です。空行による偶然の境界は画面幅で変わるので採用しません。

記法を置く行と置かない行の対照を作る

第1章では固有語の直前に記法を置き、第2章では同じ長さの文章を記法なしで置きます。二章のXHTMLを比較し、改ページに対応する構造だけが第1章へ現れるかを調べます。文字列page-breakが0でも、別クラスやCSS差が一件あれば候補として追跡できます。

候補を見つけたら、スタイルシートから適用値を読み、読書画面で第1章の固有語が新しいページ先頭に来るかを確認します。第2章が偶然同じ位置で折り返す場合は、前文の長さを変えて再試験します。画面サイズによる自然な折返しと指定境界を分離するためです。

原稿記法1件、変換構造1件、視覚結果1件を同じ試行番号へ結びます。三つのうち、現在確定しているのは原稿記法です。XHTMLの直接検索0とvalid値だけでは残り二つを埋めません。

復旧は記法仕様と出力設定へ戻り、生成EPUBを手作業で編集しません。正しい元データから再生成し、ハッシュの異なる新しい結果として検査します。

改ページ位置が章題を孤立させないかを見る

指定が技術的に働いても、章題だけが前ページに残るような位置では読みにくくなります。記法を章題の前に置くのか、章題と本文の間に置くのかを作品ルールで決めます。対照標本では両位置を試し、生成XHTMLの構造とMac画面の結果を比較します。

章題前を採用するなら、navリンクの到着先も新しいページ先頭に一致するか確認します。フラグメントが本文途中へ向いていると、目次から開いたときだけ境界が異なって見える場合があります。改ページと目次を別々に検査した後、到着動作を組み合わせて見ます。

画面結果にはページサイズや余白設定も添えます。リフロー型EPUBは環境でページ数が変わるため、「必ず何ページ目」とは約束せず、指定箇所の前で境界が成立するかを判定します。

追加実測で指定行がp002の章頭になった

合成原稿2行目のCHAPTER-START-ANCHOR-273を指定し、text page-break --line 2をdry-run後に適用しました。保存後の原稿記法は1件、再検査はexit 0です。生成EPUBのSHA-256はc822ebc225b5994c1c5f437ece36307c5d0081b771dbf9ee4d18d3d3b2663af1、構造検査はvalid=trueでした。

解凍すると、元の見出しはp001.xhtml、指定した固有語はp002.xhtmlのtitleとh1にありました。p002への原稿記法の文字漏れは0件です。page-breakやbreak-beforeの直接記述は0件でも、指定行が別XHTMLの先頭見出しへ変換されたことを受入証拠にできます。

章題の前と本文の前を取り違えない

章全体を新しいページにするなら、章題の前へ記法を置きます。章題後に置くと、見出しだけが前ページに残る可能性があります。両方の小さな標本を別名で作り、生成されたp001/p002の分割位置を比較します。

navリンクの参照先もp002の章頭IDへ向くか確かめます。章頭の分割と目次の到達は別の事実なので、XHTMLが分かれただけで操作合格にしません。

視覚合格はReader名と画面条件を残す

リフロー型EPUBではページ番号は変わります。「必ず12ページ目」ではなく、指定した章題が新しい画面の先頭に現れるかを判定します。Reader名、版、フォントサイズ、余白、EPUB SHAを記録します。今回はXHTML境界までを実測し、物理端末の視覚結果は未実測です。