『build.xml』ファイルを作成します。
build.xml
<?xml version="1.0" encoding="UTF-8"?> <project name="docbook" default="build-pdf"> <property name="root.dir" location="."/> <property name="doc.dir" location="${root.dir}/doc"/> <property name="html.dir" location="${root.dir}/html"/> <property name="pdf.dir" location="${root.dir}/pdf"/> <property name="lib.dir" location="${root.dir}/lib"/> <property name="res.dir" location="${root.dir}/resources"/> <property name="style.dir" location="${res.dir}/j-docbook-style"/> <property name="document" value="document"/> <property name="book.xml" location="${doc.dir}/book.xml"/> <property name="fop.xconf" location="${root.dir}/fop.xconf"/> <property name="docbook.dir" location="${res.dir}/docbook-xsl-1.75.2"/> <property name="xhtml.stylesheet" location="${res.dir}/j-docbook-xslt/xslt/org/jboss/xhtml.xsl"/> <property name="pdf.stylesheet" location="${res.dir}/j-docbook-xslt/xslt/org/jboss/pdf.xsl"/> <property name="conf.key" value="-Dorg.apache.xerces.xni.parser.XMLParserConfiguration"/> <property name="conf.val" value="org.apache.xerces.parsers.XIncludeParserConfiguration"/> <property name="xinclude.parser.conf" value="${conf.key}=${conf.val}"/> <property name="builder.key" value="-Djavax.xml.parsers.DocumentBuilderFactor"/> <property name="builder.val" value="org.apache.xerces.jaxp.DocumentBuilderFactoryImpl"/> <property name="document.builder.factory" value="${builder.key}=${builder.val}"/> <property name="parser.key" value="-Djavax.xml.parsers.SAXParserFactory"/> <property name="parser.val" value="org.apache.xerces.jaxp.SAXParserFactoryImpl"/> <property name="sax.parser.factory" value="${parser.key}=${parser.val}"/> <property name="xerces.dir" location="${lib.dir}/xerces-2_9_1"/> <property name="saxon.dir" location="${lib.dir}/saxon6-5-5"/> <property name="fop.dir" location="${lib.dir}/fop-0.95"/> <taskdef name="fop" classname="org.apache.fop.tools.anttasks.Fop"> <classpath> <fileset dir="${fop.dir}/lib"> <include name="*.jar" /> </fileset> <fileset dir="${fop.dir}/build"> <include name="fop.jar" /> <include name="fop-hyph.jar" /> </fileset> </classpath> </taskdef> <path id="saxon.classpath"> <fileset dir="${saxon.dir}" id="saxon.fileset"> <include name="saxon.jar" /> <include name="saxon-jdom.jar" /> <include name="saxon-xml-apis.jar" /> </fileset> <fileset dir="${docbook.dir}/extensions" id="saxon.fileset.ext"> <include name="saxon65.jar" /> </fileset> <fileset dir="${xerces.dir}" id="xerces.fileset"> <include name="xercesImpl.jar" /> </fileset> <fileset dir="${lib.dir}" id="jboss.fileset"> <include name="highlight-1.0.0.jar" /> <include name="jhighlight-1.0.jar" /> </fileset> </path> <target name="build-html"> <delete dir="${html.dir}" /> <mkdir dir="${html.dir}" /> <java classname="com.icl.saxon.StyleSheet" classpathref="saxon.classpath" fork="true"> <jvmarg value="${xinclude.parser.conf}" /> <jvmarg value="${document.builder.factory}" /> <jvmarg value="${sax.parser.factory}" /> <arg line= "-o ${html.dir}/${document}.html ${book.xml} ${xhtml.stylesheet} base.dir=${html.dir}/"/> </java> <copy todir="${html.dir}"> <fileset dir="${style.dir}/css"> <include name="css/*" /> </fileset> <fileset dir="${style.dir}/images/"> <include name="images/**/*" /> </fileset> </copy> </target> <target name="build-pdf"> <delete dir="${pdf.dir}" /> <mkdir dir="${pdf.dir}" /> <java classname="com.icl.saxon.StyleSheet" classpathref="saxon.classpath" fork="true"> <jvmarg value="${xinclude.parser.conf}" /> <jvmarg value="${document.builder.factory}" /> <jvmarg value="${sax.parser.factory}" /> <arg line="-o ${pdf.dir}/${document}.fo ${book.xml} ${pdf.stylesheet}"/> </java> <fop format="application/pdf" outdir="${pdf.dir}" userconfig="${fop.xconf}" messagelevel="debug"> <fileset dir="${pdf.dir}"> <include name="*.fo" /> </fileset> </fop> </target> </project>
コマンドフロンプトを開き作業フォルダーに移動します。
cd C:\mybook
ANTを実行してHTMLファイルを作成します。
ant build-htmlビルド後、htmlフォルダにhtmlファイルが出力されます。
ANTを実行してPDFファイルを作成します。
ant build-pdfビルド後、pdfフォルダにpdfファイルが出力されます。