<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
    [轉(zhuǎn)]安裝配置Docbook工具
    原文鏈接:http://blog.csdn.net/mickeyrat/archive/2005/02/06/283471.aspx


    安裝配置Docbook工具

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

    下面詳細(xì)介紹各個(gè)工具的安裝。

    1.安裝DocBook DTD

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

    事實(shí)上可以不下載Docbook DTD。如果你的文檔DTD聲明這樣寫(xiě):

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

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

    如果選擇使用本地DTD,文檔的DTD引用應(yīng)該這樣寫(xiě):

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

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

    Docbook提供了一種方式,讓用戶(hù)可以使用相同的DTD聲明,但可以在使用網(wǎng)絡(luò)獲取DTD和使用本地DTD之間切換,同時(shí)擁有兩者的優(yōu)勢(shì)。這就是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>

    這個(gè)聲明把網(wǎng)絡(luò)DTD映射到本地DTD。如果使用支持Catalog的XSLT Processor,它首先會(huì)查找本地文件,如果本地文件不存在,再查找網(wǎng)絡(luò)。

    2.安裝Docbook XSL樣式單

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

    解壓之后,有幾個(gè)比較主要的目錄:
    ?*common?? - 包含的是公用的模塊,諸如語(yǔ)言之類(lèi)的文件都在這里。
    ?*extensions - 針對(duì)特定的XSLT Processor編寫(xiě)的擴(kuò)展代碼。
    ?*fo???????????? - 生成XSL-FO文件所需的XSL樣式單。
    ?*html????????? - 生成HTML文件所需的XSL樣式單。
    ?*images????? - 生成文檔時(shí)所需要的圖片。
    ?*doc????????? - 有關(guān)XSL樣式單的文檔,同樣是Docbook文檔。

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

    3.安裝XSLT Processor

    目前有許多免費(fèi)的XSLT Processor,最常用的是
    ?*Saxon??? - 使用Java實(shí)現(xiàn),http://saxon.sourceforge.net/
    ?*Xalan???? - 有Java和C++版本,http://xml.apache.org/xalan-j/index.html
    ?*xsltproc - 使用C實(shí)現(xiàn),是最快的處理程序,http://xmlsoft.org/XSLT/
    ?
    因?yàn)镾axon和Xalan都有Java版本,所以按照一般的Java程序的安裝方式安裝即可。下面介紹xsltproc的安裝,因?yàn)樗俣瓤欤俏冶容^喜歡的處理程序。

    如果你使用windows平臺(tái),那么你有兩個(gè)方法可選:

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

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

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

    ?xsltproc -version

    ?打印出版本號(hào)則表明完成安裝。
    ?
    ?2) 在Cygwin下安裝,這是我選擇使用的方式。Cygwin是一個(gè)在Windows下模擬Linux Shell的應(yīng)用程序。如果你喜歡以Linux命令的方式來(lái)使用xsltproc,下載Cygwin安裝程序。Cygwin的是通過(guò)網(wǎng)絡(luò)安裝的,首先你從它提供的包列表中選擇libxslt,然后安裝程序會(huì)根據(jù)依賴(lài)關(guān)系自動(dòng)選擇libxml2,確定之后,安裝程序下載并安裝xsltproc。完成安裝之后,你就可以運(yùn)行

    ?xsltproc -version

    來(lái)檢查是否安裝成功。
    ?
    3) 如果使用Linux,很有可能系統(tǒng)已經(jīng)安裝了xsltproc。運(yùn)行

    xsltproc -version

    檢查一下是否已經(jīng)安裝。如果運(yùn)行命令失敗,或者版本太老,那么訪問(wèn)下面兩個(gè)URL獲取最新的RPM包:

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

    然后切換到root權(quán)限,安裝新的包:

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

    完成之后,就可以運(yùn)行

    xsltproc -version

    檢查安裝是否完成。

    安裝之后,就可以使用xsltproc來(lái)生成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的命令行參數(shù),直接運(yùn)行
    xsltproc也會(huì)打印出參數(shù)列表。

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

    4. 安裝XSL-FO處理程序

    XSL-FO處理程序根據(jù)XSLT處理程序生成的XSL-FO文件生成PDF或者PS文件。目前可供選擇的XSL-FO處理程序遠(yuǎn)不如XSLT處理程序那么多,這是因?yàn)椋?br />
    ??? a. XSL-FO標(biāo)準(zhǔn)比XSLT標(biāo)準(zhǔn)的制訂晚兩年;

    ??? b.XSL-FO標(biāo)準(zhǔn)及其龐大而復(fù)雜,該標(biāo)準(zhǔn)的作者也發(fā)現(xiàn)其實(shí)現(xiàn)上的難度,從而將該標(biāo)準(zhǔn)分為基本、擴(kuò)展和完整三個(gè)級(jí)別。

    現(xiàn)在可用的免費(fèi)的XSL-FO處理程序有:

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

    另外有一些商業(yè)產(chǎn)品可供選擇,可能生成的文檔質(zhì)量要比開(kāi)源代碼好,譬如:

    ??? *XEP

    ??? *XSL Formatter

    下面介紹如何安裝FOP。

    4.1.首先需要安裝JDK,這個(gè)不用多說(shuō)。

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

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

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

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

    如果使用fop.sh(Linux平臺(tái)),會(huì)自動(dòng)搜索。

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

    現(xiàn)在就可以使用FOP來(lái)生成PDF文檔了。FOP提供兩個(gè)腳本fop.bat(Windows平臺(tái))和fop.sh(Unix和Linux平臺(tái))以方便使用。生成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

    在處理過(guò)程中,可能會(huì)提示某些屬性不支持或尚未實(shí)現(xiàn),不用理會(huì)這些提示,因?yàn)镕OP仍處于開(kāi)發(fā)中,這并不影響生成PDF文檔。

    到此,一個(gè)Docbook發(fā)布系統(tǒng)配置完成,并可以用來(lái)發(fā)布文檔了。你完全可以在Linux上編寫(xiě)任務(wù),通過(guò)該系統(tǒng)自動(dòng)發(fā)布技術(shù)文檔。

    參考文章:
    Docbook簡(jiǎn)介

    制作Docbook文檔

    DocBook XSL: The Complete Guide


    posted on 2006-08-22 17:12 想飛的魚(yú) 閱讀(468) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 其他
    主站蜘蛛池模板: 日本19禁啪啪无遮挡免费动图| 97公开免费视频| 国产a级特黄的片子视频免费| 亚洲影视自拍揄拍愉拍| 免费精品国偷自产在线在线| 亚洲另类春色校园小说| 在线观看av永久免费| 亚洲国产欧美日韩精品一区二区三区 | 精品久久久久亚洲| 国产老女人精品免费视频| 亚洲6080yy久久无码产自国产| 国产精品另类激情久久久免费| 国产精品久久亚洲一区二区| 亚洲精品成人区在线观看| 中文字幕无线码免费人妻| 久久精品国产亚洲AV麻豆不卡| 91av免费观看| 亚洲精品国产首次亮相| 亚洲成AV人在线观看网址| 中文字幕无线码中文字幕免费 | 免费高清资源黄网站在线观看| 亚洲精品精华液一区二区| 国产91精品一区二区麻豆亚洲 | 亚洲国产精品白丝在线观看| 久久午夜免费视频| 日韩亚洲人成在线综合| 国产精品亚洲片在线观看不卡| 最近中文字幕完整版免费高清| 亚洲一区二区三区高清不卡| 亚洲?V乱码久久精品蜜桃| 国产精品99精品久久免费| 精品亚洲国产成人| 国产成人99久久亚洲综合精品| 日本在线看片免费| 亚洲AV永久无码精品一福利| 狠狠亚洲狠狠欧洲2019| 国产香蕉免费精品视频| 国产精品观看在线亚洲人成网| 亚洲AV无码乱码在线观看富二代 | 最近高清国语中文在线观看免费| 深夜福利在线免费观看|