<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    wiflish
    Loving Life! Loving Coding!
    posts - 98,comments - 98,trackbacks - 0
    [轉]安裝配置Docbook工具
    原文鏈接:http://blog.csdn.net/mickeyrat/archive/2005/02/06/283471.aspx


    安裝配置Docbook工具

    使用Docbook發布文檔,需要安裝以下的工具:
    ??? *DocBook DTD
    ??? *DocBook XSL 樣式單
    ??? *XSLT處理程序
    ??? *XSL-FO處理程序

    下面詳細介紹各個工具的安裝。

    1.安裝DocBook DTD

    Docbook DTD可以到OASIS的網站上下載,在這里你可以找到zip格式的壓縮包。目前的最新版本是4.2。

    事實上可以不下載Docbook DTD。如果你的文檔DTD聲明這樣寫:

    <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"? "

    根據這樣的定義,大部分XML處理器能夠從網絡上獲取DTD。這樣做的好處是編輯的Docbook文檔移植性好,可以在沒有安裝Docbook DTD的機器上使用。不過由于Docbook DTD比較龐大,通過網絡獲取DTD會影響處理速度,在低速網絡或者網絡比較糟糕的情況下,影響尤為顯著。

    如果選擇使用本地DTD,文檔的DTD引用應該這樣寫:

    Linux:
    <!DOCTYPE book SYSTEM "/usr/share/docbook-4.2/docbookx.dtd">

    Windows:
    <!DOCTYPE book SYSTEM "
    file:///C:/xml/docbook42/docbookx.dtd">

    Docbook提供了一種方式,讓用戶可以使用相同的DTD聲明,但可以在使用網絡獲取DTD和使用本地DTD之間切換,同時擁有兩者的優勢。這就是catalog文件的作用。典型的catalog的聲明如下:

    <catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
    ? <group id="DocbookDTD" prefer="public">
    ????? <system?
    ???????? systemId="
    http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
    ???????? uri="
    file:///usr/share/xml/docbook42/docbookx.dtd"/>
    ? </group>
    </catalog>

    這個聲明把網絡DTD映射到本地DTD。如果使用支持Catalog的XSLT Processor,它首先會查找本地文件,如果本地文件不存在,再查找網絡。

    2.安裝Docbook XSL樣式單

    http://docbook.sourceforge.net上可以下載到Docbook XSL樣式單,目前最新的版本是1.67.2。

    解壓之后,有幾個比較主要的目錄:
    ?*common?? - 包含的是公用的模塊,諸如語言之類的文件都在這里。
    ?*extensions - 針對特定的XSLT Processor編寫的擴展代碼。
    ?*fo???????????? - 生成XSL-FO文件所需的XSL樣式單。
    ?*html????????? - 生成HTML文件所需的XSL樣式單。
    ?*images????? - 生成文檔時所需要的圖片。
    ?*doc????????? - 有關XSL樣式單的文檔,同樣是Docbook文檔。

    其他還有像htmlhelp之類的目錄,但不是生成HTML或XSL-FO所必須的。

    3.安裝XSLT Processor

    目前有許多免費的XSLT Processor,最常用的是
    ?*Saxon??? - 使用Java實現,http://saxon.sourceforge.net/。
    ?*Xalan???? - 有Java和C++版本,http://xml.apache.org/xalan-j/index.html。
    ?*xsltproc - 使用C實現,是最快的處理程序,http://xmlsoft.org/XSLT/
    ?
    因為Saxon和Xalan都有Java版本,所以按照一般的Java程序的安裝方式安裝即可。下面介紹xsltproc的安裝,因為它速度快,是我比較喜歡的處理程序。

    如果你使用windows平臺,那么你有兩個方法可選:

    ?1) 直接下載為windows平臺預編譯的版本。你需要下載libxml, libxslt, 和iconv,它們都是zip格式,解壓之后,在環境變量PATH中添加xsltproc.exe和.dll文件的路徑。
    ?
    ?如果你不想編輯環境變量,一個簡單的辦法是把下面這些文件復制到C:\Windows\System32:

    ? libxslt.dll
    ? libxml2.dll
    ? libexslt.dll
    ? iconv.dll
    ? xsltproc.exe

    ?這樣在命令行就可以直接找到這些文件了。完成之后,運行

    ?xsltproc -version

    ?打印出版本號則表明完成安裝。
    ?
    ?2) 在Cygwin下安裝,這是我選擇使用的方式。Cygwin是一個在Windows下模擬Linux Shell的應用程序。如果你喜歡以Linux命令的方式來使用xsltproc,下載Cygwin安裝程序。Cygwin的是通過網絡安裝的,首先你從它提供的包列表中選擇libxslt,然后安裝程序會根據依賴關系自動選擇libxml2,確定之后,安裝程序下載并安裝xsltproc。完成安裝之后,你就可以運行

    ?xsltproc -version

    來檢查是否安裝成功。
    ?
    3) 如果使用Linux,很有可能系統已經安裝了xsltproc。運行

    xsltproc -version

    檢查一下是否已經安裝。如果運行命令失敗,或者版本太老,那么訪問下面兩個URL獲取最新的RPM包:

    http://rpmfind.net/linux/rpm2html/search.php?query=libxml2
    http://rpmfind.net/linux/rpm2html/search.php?query=libxslt

    然后切換到root權限,安裝新的包:

    rpm -Uv libxml2-2.6.17-2.i386.rpm
    rpm -Uv libxslt-1.1.12-4.i386.rpm

    完成之后,就可以運行

    xsltproc -version

    檢查安裝是否完成。

    安裝之后,就可以使用xsltproc來生成HTML或者XSL-FO文件。

    譬如,生成HTML:

    xsltproc? --output myfile.html? docbook-xsl/html/docbook.xsl myfile.xml

    或者生成XSL-FO文檔:

    xsltproc --output myfile.fo docbook-xsl/fo/docbook.xsl myfile.xml

    http://xmlsoft.org/XSLT/xsltproc2.html上列出了所有xsltproc的命令行參數,直接運行
    xsltproc也會打印出參數列表。

    如果你只要發布HTML文檔,那么到此為止。如果你還想發布PDF或是PS文檔,那么需要安裝XSL-FO處理程序。

    4. 安裝XSL-FO處理程序

    XSL-FO處理程序根據XSLT處理程序生成的XSL-FO文件生成PDF或者PS文件。目前可供選擇的XSL-FO處理程序遠不如XSLT處理程序那么多,這是因為:

    ??? a. XSL-FO標準比XSLT標準的制訂晚兩年;

    ??? b.XSL-FO標準及其龐大而復雜,該標準的作者也發現其實現上的難度,從而將該標準分為基本、擴展和完整三個級別。

    現在可用的免費的XSL-FO處理程序有:

    ??? *FOP - 來自Apache XML項目。目前最新的版本是0.20.5,還在開發當中,還有很多特性不支持,不過已經可以滿足一般的使用。
    ???
    ??? *PassiveTeX - 來自Sebastian Rahtz (http://www.tei-c.org.uk/Software/passivetex/)一款基于TeX的XSL-FO處理程序。同樣也在開發中,較FOP要復雜的多。

    另外有一些商業產品可供選擇,可能生成的文檔質量要比開源代碼好,譬如:

    ??? *XEP

    ??? *XSL Formatter

    下面介紹如何安裝FOP。

    4.1.首先需要安裝JDK,這個不用多說。

    4.2. 下載FOP,可以選擇tar或者zip壓縮包。下載之后解壓到本地。

    4.3. 下載圖形代碼庫。FOP自己不支持PNG之類的圖片,如果在你的文檔里會涉及到圖片,那么需要下載額外的代碼庫。可以選擇JAI,或者Jimi。0.20.5之前的版本只能使用Jimi。下載之后,將jai_core.jar和jai_codec.jar(JAI),或者JimiProClasses.jar(Jimi)復制到FOP安裝目錄的lib目錄下,然后在fop.bat(Windows平臺)中添加

    set LOCALCLASSPATH=%LOCALCLASSPATH%;%LIBDIR%\jai_core.jar
    set LOCALCLASSPATH=%LOCALCLASSPATH%;%LIBDIR%\jai_codec.jar

    或是
    set LOCALCLASSPATH=%LOCALCLASSPATH%;%LIBDIR%\JimiProClasses.zip

    如果使用fop.sh(Linux平臺),會自動搜索。

    4.4. 添加擴展代碼。如果Docbook XSL樣式單有針對FOP的擴展代碼(目前沒有),像上面一樣把它們添加到FOP安裝目錄下lib目錄。

    現在就可以使用FOP來生成PDF文檔了。FOP提供兩個腳本fop.bat(Windows平臺)和fop.sh(Unix和Linux平臺)以方便使用。生成PDF的命令行如下:

    ??? Linux或Unix:
    ??? fop.sh -xsl /docbook-xsl/fo/docbook.xsl -xml myfile.xml -pdf myfile.pdf
    ???
    ??? Windows:
    ??? fop.bat -xsl /docbook-xsl/fo/docbook.xsl -xml myfile.xml -pdf myfile.pdf

    在處理過程中,可能會提示某些屬性不支持或尚未實現,不用理會這些提示,因為FOP仍處于開發中,這并不影響生成PDF文檔。

    到此,一個Docbook發布系統配置完成,并可以用來發布文檔了。你完全可以在Linux上編寫任務,通過該系統自動發布技術文檔。

    參考文章:
    Docbook簡介

    制作Docbook文檔

    DocBook XSL: The Complete Guide


    posted on 2006-08-22 17:12 想飛的魚 閱讀(467) 評論(0)  編輯  收藏 所屬分類: 其他
    主站蜘蛛池模板: 无码国产精品一区二区免费模式| free哆拍拍免费永久视频 | 污污的视频在线免费观看| 91免费精品国自产拍在线不卡| 亚洲国产精品久久久久| 久久九九全国免费| 亚洲av午夜福利精品一区人妖| 日韩精品无码免费专区午夜| 亚洲AV无码乱码在线观看裸奔| 你是我的城池营垒免费看| 亚洲成亚洲乱码一二三四区软件| 成人性生交大片免费看好| 亚洲国产精品VA在线观看麻豆| 可以免费观看的国产视频| 日韩精品亚洲人成在线观看| 美女内射无套日韩免费播放 | 精品亚洲麻豆1区2区3区| 91麻豆国产免费观看| 亚洲一卡二卡三卡四卡无卡麻豆| 手机在线看永久av片免费| 亚洲成熟丰满熟妇高潮XXXXX| 国产无遮挡色视频免费视频| 一级黄色片免费观看| 国产AV无码专区亚洲AVJULIA| 午夜精品一区二区三区免费视频| 亚洲无限乱码一二三四区| 成年人网站在线免费观看| 狠狠热精品免费观看| 亚洲日产无码中文字幕| 亚洲精品视频免费看| 国产亚洲一卡2卡3卡4卡新区| 亚洲另类少妇17p| 久久久免费的精品| 色天使亚洲综合在线观看| 免费国产精品视频| 秋霞人成在线观看免费视频| 最新亚洲春色Av无码专区| 久久精品国产亚洲7777| 99久久免费精品视频| 国产精品亚洲一区二区在线观看| 国产亚洲AV手机在线观看|