web-dev-qa-db-ja.com

docbook5.0からPDFを生成する方法

ヘッダー付きのdocbook5.0ドキュメントを作成しました。

<?xml version="1.0" encoding="UTF-8"?>
<book version="5.0" xmlns="http://docbook.org/ns/docbook"
      xmlns:xlink="http://www.w3.org/1999/xlink"
      xmlns:xi="http://www.w3.org/2001/XInclude"
      xmlns:svg="http://www.w3.org/2000/svg"
      xmlns:m="http://www.w3.org/1998/Math/MathML"
      xmlns:html="http://www.w3.org/1999/xhtml"
      xmlns:db="http://docbook.org/ns/docbook">

ubuntu 9.10のdocbook2pdfは、多くのエラーメッセージを出力し、PDFドキュメントを実行しません。エラーは次のとおりです。

openjade:test.xml:2:0:E: prolog can't be omitted unless CONCUR NO and LINK EXPLICIT NO and either IMPLYDEF ELEMENT YES or IMPLYDEF DOCTYPE YES
openjade:test.xml:2:0:E: no document type declaration; will parse without validation
openjade:/usr/share/sgml/docbook/stylesheet/dsssl/modular/print/dbtitle.dsl:18:5:E: flow objects at the root must be all of class scroll or all of class page-sequence or simple-page-sequence
openjade:/usr/share/sgml/docbook/stylesheet/dsssl/modular/print/dbbibl.dsl:704:4:E: flow objects at the root must be all of class scroll or all of class page-sequence or simple-page-sequence

次のような通常のヘッダーを持つdocbook4.5形式のドキュメントのdocbook2pdf。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">

かなり問題なく動作します。

Docbook 5.0からPDFを生成する方法はありますか?

16

DocbookからPDFを生成するための3つのオプション(Debian/Ubuntuで利用可能)があります:

  • ジェイド。アスカーが使用したdocbook2pdfコマンドを提供します。翡翠は古く、XMLよりも前のSGMLで動作し、Unicodeをサポートしていません。また、docbook5のサポートもありません。

  • docbook-xslstylesheets XSL-FOを通過します。 docbook-xslはdocbook4.5用、docbook-xsl-nsはdocbook5用です。 fopを使用してXSL-FOからPDFに移動します。パイプライン:docbook5 —(xsl)—> xml.fo —(fop)—> pdf。関連するコマンド:xsltproc、fop。

  • dblatex。これは主にdocbook4.5を対象としていますが、一部のdocbook5で更新されています。

xmltoは、現在デフォルトでdocbook-xsl-nsではなくdocbook-xslになっていますが、最後の2つを駆動できます。


Docbook5のクイックユーザーガイド

前提条件

Sudo aptitude install docbook5 docbook-xsl-ns xsltproc fop xmlto libxml2-utils xmlstarlet

検証

xmlstarlet val --err --xsd /usr/share/xml/docbook/schema/xsd/5.0/docbook.xsd book.xml

PDF出力

xsltproc /usr/share/xml/docbook/stylesheet/docbook-xsl-ns/fo/docbook.xsl book.xml > book.fo
fop -fo book.fo -pdf book.pdf
32
Tobu

あなたが与えたヘッダーとは別に、 DocBook 5.0:The Definitive Guide のこのような小さな例を試しましたか?

<?xml version="1.0" encoding="UTF-8"?>

<book xmlns='http://docbook.org/ns/docbook'>
  <title>An Example Book</title>
  <titleabbrev>Example</titleabbrev>
  <info>
    <legalnotice><para>No notice is required.</para></legalnotice>
    <author><personname>
      <firstname>Norman</firstname><surname>Walsh</surname>
    </personname></author>
  </info>

  <dedication>
  <para>
      This book is dedicated to you.
  </para>
  </dedication>

  <preface>
    <title>Foreword</title>
    <para>
        Some content is always required.
    </para>
  </preface>

  <chapter>
    <title>A Chapter</title>
    <para>
        Content is required in chapters too.
    </para>
  </chapter>

  <appendix>
    <title>Optional Appendix</title>
    <para>
        Appendixes are optional.
    </para>
  </appendix>
</book>

私のMaven環境の1つを介してPDFにレンダリングしました。必要なすべての追加の名前スペースを使用するコンテンツを含む小さな例(またはいくつかの別々の1回)を挙げてください。 。

上記の例が機能せず、環境をどのようにセットアップしたかに興味がある場合は、 DocBookコンテンツをMavenプロジェクトサイトで利用できるようにする を読んでください。この例を上記のDocBook5.0の例に置き換えるだけです。のみ docbkx-maven-pluginは、この質問に関連して興味深いものです。 (追記:これにはJavaおよびMaven2の基本的な知識が必要です。)

4
Verhagen

Docbook4.5と5.0の間には大きな違いがあります。そして、これらの違いにより、ドキュメントの変換が妨げられる可能性があります。

5.0ドキュメントの有効性を確認する場合は、次のコマンドラインツールを使用できます。

  1. これはJavaツールなので、最近のJavaランタイム環境が必要です。

  2. ツールはジンです。 thaiopensource Webサイトからダウンロードできます: http://www.thaiopensource.com/relaxng/jing.html

  3. docbook5.0のrelaxngファイルも必要になります。 docbook5ディストリビューションで提供されます。

  4. 次のコマンドラインを使用して検証テストを実行します。
    Java -jar path_to_Jing/jing.jar -t -i path_to_docbook5/docbook.rng document.xml

いくつかの失敗がある場合は、次のように返す必要があります。URL "file:...../document.xml"、行番号211、列番号59のエラー:名前空間 "の属性" id "の値が正しくありません- http://www.w3.org/XML/1998/namespace "経過時間968 + 166 = 1134ミリ秒

2
Hicham Bakir

収税吏

Publican を使用して、DocBook XMLをPDF、html、およびhtml-single形式で公開できます。 Publicanは、Red Hatの内部ドキュメントツールチェーンの一部として使用されており、Fedoraプロジェクトによってホストされているオープンソースアプリケーションです。このツールは「ブランド」を使用して、公開されているコンテンツにスタイルを適用する際のモジュール性を実現します。このプリセット方法は、さまざまなCMSまたはドキュメントツールをシミュレートします。

JBossドキュメンテーションガイド

動作中のツールの良い例は JBoss Press Gangドキュメント です。これは、JBossドキュメントでのDocBookXMLの使用に関するドキュメントコミュニティガイダンスを提供する優れたリソースです。 htmlおよびPDFバージョンはPublicanで生成されました。

2
ddri

http://docbookpublishing.com DocBook5.0ドキュメントをサポートします。これは、DocBookがPDFフォーマットするためのオンラインサービスです。REST APIを介してDocBookドキュメントを送信することもできます。

1
Tom

Eclipseに移動してインストールします DocBook編集およびEclipse用処理(DEP4E)プラグイン 。マーケットプレイスにアクセスして、そこでdocbookを検索することで見つけることができます。このプラグインはサンプルのdocbookを作成し、html、pdf、さらにはebookで公開できます。

または、 DEP4E Webサイト を確認し、 クイックスターターガイド セクション3をお読みください。はじめに、その可能性についてのアイデアを得る。

1
Gangnus

ワードプレスの投稿からDocbookスタイルの投稿へ: http://hashfold.com/techfold/wordpress-how-to-generate-docbook-style-posts/

0