Asciidoctorを使用した本の生成
1. 序章
この簡単な記事では、AsciiDocドキュメントからブックを生成する方法と、さまざまなスタイルオプションを使用してブックをカスタマイズする方法を示します。
JavaのAsciiDocに慣れていない場合は、AsciiDoctorの概要を読むことができます。
2. バックエンドブックタイプ
AsciiDoctorjを使用して本を生成する最も簡単な方法は、前述の記事のようにMavenを使用することです。 唯一の違いは、doctypeタグを指定し、それを「book」に設定する必要があることです。
<backend>pdf</backend>
<doctype>book</doctype>
定義されたDoctypeを使用すると、AsciiDoctorjは本を作成することを認識しているため、次のように作成されます。
- タイトルページ
- 目次
- 本文コンテンツの最初のページ
- パーツと章
言及された部分を取得するには、Asciidocドキュメントに、本の通常のタイトル、セクション、およびその他の部分を定義する必要があります。
3. カスタムスタイルの定義
本を書いている間、私たちがカスタムスタイルを使いたいのは当然です。 単純なYAMLファイルで定義されたAsciiDoc固有のフォーマット言語を使用してこれを行うことができます。
たとえば、このコードスニペットは、本の各ページがどのように表示されるかを定義します。 A4用紙フォーマットでは、縦向きモード、上下に0.75インチの余白、側面に1インチの余白を設定します。
page:
layout: portrait
margin: [0.75in, 1in, 0.75in, 1in]
size: A4
また、本のフッターとヘッダーのカスタムスタイルを定義できます。
header:
height: 0.5in
line_height: 1
recto_content:
center: '{document-title}'
verso_content:
center: '{document-title}'
footer:
height: 0.5in
line_height: 1
recto_content:
right: '{chapter-title} | *{page-number}*'
verso_content:
left: '*{page-number}* | {chapter-title}
その他のフォーマットオプションは、AsciiDoctorjのGithubページにあります。
ブック生成プロセスにカスタムテーマを含めるには、スタイルファイルが配置されているパスを定義する必要があります。 場所は、 pom.xml:の属性部分で指定されます
<pdf-stylesdir>${project.basedir}/src/themes</pdf-stylesdir>
<pdf-style>custom</pdf-style>
最初の行はスタイルが定義されているパスを定義し、2番目の行は拡張子なしのファイルの名前を指定します。
これらの変更により、pom.xmlは次のようになります。
<configuration>
<sourceDirectory>src/docs/asciidoc</sourceDirectory>
<outputDirectory>target/docs/asciidoc</outputDirectory>
<attributes>
<pdf-stylesdir>${project.basedir}/src/themes</pdf-stylesdir>
<pdf-style>custom</pdf-style>
</attributes>
<backend>pdf</backend>
<doctype>book</doctype>
</configuration>
4. ブックの生成
ブックを生成するには、プロジェクトディレクトリでMavenを実行する必要があります。生成されたブックは、 target / docs / asciidoctor/ディレクトリにあります。
5. 結論
このチュートリアルでは、Mavenを使用してシンプルなスタイルで装飾された本を生成する方法を示しました。
いつものように、この記事のコードはGitHubのにあります。