• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            牽著老婆滿街逛

            嚴以律己,寬以待人. 三思而后行.
            GMail/GTalk: yanglinbo#google.com;
            MSN/Email: tx7do#yahoo.com.cn;
            QQ: 3 0 3 3 9 6 9 2 0 .

            安裝配置Docbook工具

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

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

            1.安裝DocBook DTD

            Docbook DTD可以到OASIS的網(wǎng)站上下載(http://www.oasis-open.org/docbook/xml/),在這里你可以找到zip格式的壓縮包。目前的最新版本是4.2。

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

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

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

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

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

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

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

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

            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????????? - 有關(guān)XSL樣式單的文檔,同樣是Docbook文檔。

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

            3.安裝XSLT Processor

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

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

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

            ?這樣在命令行就可以直接找到這些文件了。完成之后,運行
            ?xsltproc -version
            ?打印出版本號則表明完成安裝。
            ?
            ?*第二,在Cygwin下安裝,這是我選擇使用的方式。Cygwin是一個在Windows下模擬Linux Shell的應(yīng)用程序。如果你喜歡以Linux命令的方式來使用xsltproc,可以到
            ?http://www.cygwin.com/
            ?下載Cygwin安裝程序。Cygwin的是通過網(wǎng)絡(luò)安裝的,首先你從它提供的包列表中選擇libxslt,然后安裝程序會根據(jù)依賴關(guān)系自動選擇libxml2,確定之后,安裝程序下載并安裝xsltproc。完成安裝之后,你就可以運行
            ?xsltproc -version
            來檢查是否安裝成功。
            ?
            *第三,如果使用Linux,很有可能系統(tǒng)已經(jīng)安裝了xsltproc。運行
            xsltproc -version
            檢查一下是否已經(jīng)安裝。如果運行命令失敗,或者版本太老,那么訪問下面兩個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

            完成之后,就可以運行
            xsltproc -version
            檢查安裝是否完成。

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

            譬如,下面是根據(jù)Docbook文檔生成HTML的例子:
            xsltproc? --output myfile.html? docbook-xsl/html/docbook.xsl myfile.xml

            或者根據(jù)docbook文檔生成XSL-FO文檔的例子:
            xsltproc --output myfile.fo docbook-xsl/fo/docbook.xsl myfile.xml

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

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

            4. 安裝XSL-FO處理程序

            XSL-FO處理程序根據(jù)XSLT處理程序生成的XSL-FO文件生成PDF或者PS文件。目前可供選擇的XSL-FO處理程序遠不如XSLT處理程序那么多,這是因為:
            ??? a. XSL-FO標準比XSLT標準的制訂晚兩年;
            ??? b.XSL-FO標準及其龐大而復雜,該標準的作者也發(fā)現(xiàn)其實現(xiàn)上的難度,從而將該標準分為基本、擴展和完整三個級別。

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

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

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

            ??? *XEP(http://www.renderx.com)

            ??? *XSL Formatter(http://www.antennahouse.com)

            下面介紹如何安裝FOP。

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

            4.2. 到http://www.apache.org/dyn/closer.cgi/xml/fop/下載FOP,可以選擇tar或者zip壓縮包。下載之后解壓到本地。

            4.3. 下載圖形代碼庫。FOP自己不支持PNG之類的圖片,如果在你的文檔里會涉及到圖片,那么需要下載額外的代碼庫??梢赃x擇JAI(http://java.sun.com/products/java-media/jai/current.html),或者Jimi(http://java.sun.com/products/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目錄。

            現(xiàn)在就可以使用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

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

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

            參考文章:
            Docbook簡介:http://blog.csdn.net/mickeyrat/archive/2005/02/04/281050.aspx
            DocBook XSL: The Complete Guide:http://www.sagehill.net/docbookxsl/index.html

            posted on 2006-07-14 11:03 楊粼波 閱讀(524) 評論(0)  編輯 收藏 引用 所屬分類: 文章收藏

            亚洲AV日韩精品久久久久久久| 粉嫩小泬无遮挡久久久久久| 久久久久亚洲精品日久生情| 国产精品99久久久久久人| 国产成人精品综合久久久| 亚洲va久久久噜噜噜久久男同| 91精品国产91久久久久久蜜臀| 久久精品免费全国观看国产| 精品综合久久久久久97超人| 久久精品国产亚洲AV久 | 2021国内久久精品| 久久99国产亚洲高清观看首页| 久久99热这里只有精品66| 国产呻吟久久久久久久92| 久久婷婷成人综合色综合| 亚洲国产香蕉人人爽成AV片久久 | 久久精品国内一区二区三区| 日韩欧美亚洲综合久久| 久久精品无码一区二区app| 996久久国产精品线观看| 综合久久国产九一剧情麻豆| 久久精品18| 精品久久国产一区二区三区香蕉| 伊人久久大香线焦AV综合影院| 久久综合视频网站| 久久天天躁狠狠躁夜夜不卡| 亚洲乱亚洲乱淫久久| 久久国产精品久久精品国产| 7777久久亚洲中文字幕| 久久久亚洲欧洲日产国码aⅴ| 国产成人精品综合久久久| 一本色道久久88综合日韩精品| 久久久久国产精品麻豆AR影院| 成人a毛片久久免费播放| 94久久国产乱子伦精品免费| 久久亚洲欧美日本精品| 国产午夜精品久久久久免费视| 久久天天躁狠狠躁夜夜网站 | 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 伊人久久综合成人网| 99久久夜色精品国产网站|