特別な出力設定
EPUB形式の出力
vivliostyle build コマンドに -f (--format)オプションで epub を指定する、または -o(--output)オプションで .epub 拡張子をつけて指定するとEPUBを出力します。
EPUB形式で出力する場合、目次を設定した状態で出力することが推奨されます。目次の作成を参考にして、構成ファイルに toc を設定した上で、以下のように出力オプションでEPUBを設定します。
vivliostyle build -o output.epub
また、次のように1回の vivliostyle build コマンドでPDFとEPUBの両方を生成することもできます(他の出力形式も同様です)。
vivliostyle build -o pdfbook.pdf -o epubbook.epub
Vivliostyle CLIでは、EPUB 3に準拠したEPUBファイルを生成します。一方で、EPUBに適用するCSSファイル自体はそのままの状態で出力されるため、EPUBビューワーによっては表示に問題が発生する可能性があります。より多くのEPUBビューワーに対応するためには、それぞれのビューワーに対応したテーマやCSSファイルを適用するようにしてください。日本語向けのEPUBの場合、電書協EPUB3制作ガイドに準拠したVivliostyle Theme "@vivliostyle/theme-epub3j"を用意しています。
Web出版物(WebPub)の出力
vivliostyle build コマンドに -f (--format) オプションで webpub を指定すると、Web出版物(WebPub)を生成します。出力先 -o (--output)オプションにはWebPubを配置するディレクトリを指定します。
vivliostyle build -o webpub/ -f webpub
生成されたWebPubディレクトリ内には出版物マニフェスト publication.json ファイルがあり、コンテンツのHTMLファイルの読み込み順などの情報が記述されています。これはW3C標準仕様であるPublication Manifestに準拠しています。
WebPubは、Web上で読むことができる出版物を作るのに使えます。また、次のように publication.json ファイルを vivliostyle build コマンドに指定することで、WebPubからPDFを生成することができます。
vivliostyle build webpub/publication.json -o pdfbook.pdf
印刷用PDF(PDF/X-1a形式)の生成
vivliostyle build コマンドの --preflight press-ready オプション、または構成ファイルで preflight: 'press-ready' を指定すると印刷入稿に適したPDF/X-1a形式で出力することができます。この機能を使うためには、事前にDockerのインストールが必要です。
--preflight-option オプションを指定すると、この処理を実行するpress-readyに対してオプションを追加できます。
# グレースケール化して出力
vivliostyle build manuscript.md --preflight press-ready --preflight-option gray-scale
# フォントを強制的にアウトライン化して出力
vivliostyle build manuscript.md --preflight press-ready --preflight-option enforce-outline
また、--preflight press-ready-local オプションを指定すると、PDF/X-1a形式への出力をローカル環境で実行します。ただし、通常はDocker環境上で実行することをおすすめします。
Dockerを利用した生成
vivliostyle build コマンドで --render-mode docker オプションを指定すると、PDF出力時の環境としてDockerを指定できます(上記のオプションでは後処理のみDocker上で実行しますが、このオプションは全ての処理をDocker上で実行します)Dockerを用いることで出力時の環境を固定できるため、異なる環境・OSでも同じ出力結果となることを保証できます。
Docker render modeを使用する際は、以下の点に注意してください。
- Dockerはホスト環境から隔離されているため、ホストにインストールされているフォントを利用することができません。Dockerコンテナで標準で使用できるフォントは限られており、通常はローカルのフォントファイルを配置してCSSで指定するか、Google FontsなどのWebフォントを使用する必要があります。
- Dockerにマウントされるファイルはプロジェクトのworkspace directory(通常は
vivliostyle.config.jsを含むディレクトリ)のみで、その他のファイルはDockerコンテナ内部から参照することができない。イメージなどドキュメント内で参照されるファイルは全てworkspace directoryに含める必要があります。
PDFの「しおり」(Bookmarks)の生成
vivliostyle build コマンドで出力されるPDFには、目次の内容が「しおり」(PDF Bookmarks)として生成されます。PDFの「しおり」は、Adobe AcrobatのようなPDF閲覧ソフトで目次ナビゲーションに利用できます。
この「しおり」生成機能は、出版物に目次が含まれるときに有効になります。EPUBからPDFを生成する場合には、EPUBに含まれる目次が使われます。それ以外については目次の作成を参照してください。