EPUB: レイアウトの指定について

EPUBでは大きく分けてリフロー型と固定レイアウト型に分けられる。リーディングシステム側で1列/2列と変更できるレイアウトがあると思うが、これらは開発側で制御することは現状不可能でリーディングシステム側でコントロールされている。

つまり、開発側はリフロー型か固定レイアウト型かの二択になる。レイアウトの指定方法は.opfの<metadata>内にrendition:layoutを記載する必要がある。

リフロー型

リフロー型の場合はデフォルトで下記の設定が埋め込まれているので省略可能だが、一応念のため記述しておくのが無難。

    <metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
        <dc:identifier id="pub-id">urn:uuid:4xxxx4d40-8xxx-4xxx-xxxx-6xxxxxx05f4</dc:identifier>
        <dc:title>レイアウトについて</dc:title>
        <dc:language>ja</dc:language>
        <dc:creator>Tanaka</dc:creator>
        <meta property="dcterms:modified">2026-09-18T02:45:04Z</meta>
        <meta property="rendition:layout">reflowable</meta>
        ....
    </metadata>

固定レイアウト型

固定レイアウトを使用したい場合は下記の記述が必須になる。

<meta property="rendition:layout">pre-paginated</meta>

さらに、各XHTMLページにviewportの設定が必須になる。この記載がないとepubcheck時にエラーになるので注意。

 <meta name="viewport" content="width=1000, height=1400"/>

つまり固定レイアウトの場合はこれらの<meta>情報を入力する必要がある。