<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)  編輯  收藏 所屬分類: 其他
    主站蜘蛛池模板: WWW亚洲色大成网络.COM| 亚洲码一区二区三区| 国产亚洲视频在线| 毛片免费在线视频| 国产精品久久久久久亚洲影视| 在线免费视频一区二区| 亚洲国产欧美国产综合一区 | 无码国产精品一区二区免费 | 亚洲国产精品尤物YW在线观看 | 青青草原精品国产亚洲av| 久久久久久久99精品免费| 久久久久亚洲av无码专区喷水| 最刺激黄a大片免费网站| 亚洲码在线中文在线观看| 大陆一级毛片免费视频观看i| 亚洲av永久无码天堂网| 亚洲精品第一国产综合境外资源| 皇色在线免费视频| 久久久久无码精品亚洲日韩| 18禁网站免费无遮挡无码中文| 中文字幕亚洲男人的天堂网络| 成人a视频片在线观看免费| 美女尿口扒开图片免费| 成人亚洲性情网站WWW在线观看| 免费av片在线观看网站| 亚洲国产午夜电影在线入口| 暖暖在线日本免费中文| 一级毛片在线免费播放| 亚洲第一精品福利| 免费高清在线影片一区| 黄色视屏在线免费播放| 亚洲国产日韩在线人成下载| 免费观看日本污污ww网站一区| 中文字幕a∨在线乱码免费看| 亚洲精品国产免费| 免费永久在线观看黄网站| 蜜桃成人无码区免费视频网站| 亚洲Av永久无码精品一区二区| 亚洲区小说区图片区QVOD| 好大好深好猛好爽视频免费| 99久久精品毛片免费播放|