歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> Slackware 9.0的中文打印

Slackware 9.0的中文打印

日期:2017/2/27 9:48:17   编辑:更多Linux
  軟硬件配置: - 操作系統:Slackware 9.0 - 打印機:HP LaserJet 6L - 打印服務程序:CUPS 1.1.18 - Ghostscript 7.05 - Mozilla 1.4 中文版 說明:下面的操作幾乎都需要root權限。 一、安裝打印服務程序 Slackware 9.0 默認的打印服務程序是lpd,而現在更流行的是CUPS,設置也非常簡單。可以到slackware下載的鏡像站,在發行版本的 extra目錄中下載,目前的版本是cups-1.1.18。用installpkg安裝。 安裝完畢後,會在/etc/rc.d/目錄生成rc.cups文件,用root身份,運行 /etc/rc.d/rc.cups start ,即可啟動cups打印服務。用浏覽器訪問 http://localhost:631/ 即可對cups和打印機進行設置,詳情請看cups的文檔。 添加打印機並成功打印出測試頁之後,gedit和starsuite就直接能在我的HP LJ6L打印出中文。 二、設置ghostscript的中文支持 許多程序能夠通過ghostscript生成postscript文件(.ps),如果能使ghostscript支持中文,就能夠間接支持這些程序的中文打印。Slackware9.0自帶的ghostscript是7.05版。 1. 下載CMap字體文件 FTP://ftp.gyve.org/pub/gs-cjk/adobe-cmaps-200211.tar.gz ftp://ftp.gyve.org/pub/gs-cjk/acro5-cmaps-2001.tar.gz 把上面兩個文件解壓縮到/usr/share/ghostscript/Resource目錄(如果沒有這個目錄,請自己mkdir) cp adobe-cmaps-200211.tar.gz /usr/share/ghostscript/Resource cp acro5-cmaps-2001.tar.gz /usr/share/ghostscript/Resource tar zxvf adobe-cmaps-200211.tar.gz tar zxvf acro5-cmaps-2001.tar.gz rm *.gz 再建兩個字體目錄: mkdir /usr/share/ghostscript/Resource/CIDFont /usr/share/ghostscript/Resource/Font 2.下載freetype-1.3.1(後面的ttfm需要) http://sourceforge.net/project/show...p?group_id=3157 下載源碼,自行編譯安裝,完成後運行 ldconfig 更新庫文件索引 3. 下載ttfm http://www.Linuxeden.com/download/s....PHP?softid=650 下載 ttfm-1.0-6.i386.rpm 和 gscjk.ttfm 安裝: rpm -ivh ttfm-1.0-6.i386.rpm --nodeps cp gscjk.ttfm /usr/share/fonts/install/ 4.安裝中文字體 我用的是ms windows提供的simsun.ttf, simhei.ttf, simkai.ttf 和simfang.ttf 把這四個字體放到 /usr/share/fonts/ttf目錄中,也可以僅在這個目錄裡建立指向字體所在路徑的符號鏈接。 然後: cd /usr/share/fonts/install ttfm.sh --initm gscjk.ttfm 這樣就會在 /usr/share/ghostscript/Resource/CIDFont 和 /usr/share/ghostscript/Resource/Font 目錄中生成對上面四種中文字體的描述文件。


5.讓ghostscript啟動時自動加載我們安裝的中文字體 首先,修改 /usr/share/ghostscript/7.05/lib/gs_res.ps 文件,在其中找到這樣兩行: /FontResourceDir (/usr/share/ghostscript/fonts/) readonly .forcedef /GenericResourceDir (/usr/share/ghostcript/) readonly .forcedef 改為: /FontResourceDir (/usr/share/ghostscript/Resource/Font/) readonly .forcedef /GenericResourceDir (/usr/share/ghostscript/Resource/) readonly .forcedef 然後,建立CIDFnmap文件: toUCh /usr/share/ghostscript/7.05/lib/CIDFnmap.zh 編輯這個文件,輸入下面的內容: 源碼: /SimSun (/usr/share/fonts/ttf/simsun.ttf) 1 ; /SimHei (/usr/share/fonts/ttf/simhei.ttf) 1 ; /FangSong_GB2312 (/usr/share/fonts/ttf/simfang.ttf) 1 ; /KaiTi_GB2312 (/usr/share/fonts/ttf/simkai.ttf) 1 ; /Adobe-GB1 /SimSun ; /STSong-Light /SimSun ; /STFangsong-Light /FangSong_GB2312 ; /STHeiti-Regular /SimHei ; /STKaiti-Regular /KaiTi_GB2312 ; 這個文件指明了TrueType字體的路徑,並建立了字體的別名。如果需要繁體中文,可以根據上面的原理自己添加Mingliu等字體。 最後,編輯/usr/share/ghostscript/7.05/lib/CIDFnmap,在文件末尾加入一行: (CIDFnmap.zh) .runlibfile 6.測試 cd /usr/share/ghostscript/7.05/examples/cjk gv gscjk_ag.ps 如果能看到四種字體的漢字,說明ghostscript簡體中文字體設置成功。 三、設置mozilla支持中文打印 編輯 mozilla安裝目錄裡面的/defauts/pref 目錄下的 unix.js 文件,找到相應的行改成如下內容,如果沒有這些行,自己增加。 pref("print.postscript.nativecode.zh-TW", "gbk"); pref("print.postscript.nativefont.zh-TW", "SimSun-GBK-EUC-H"); pref("print.postscript.nativecode.zh-CN", "gbk"); pref("print.postscript.nativefont.zh-CN", "SimSun-GBK-EUC-H"); 完成後,存盤,重新啟動mozilla。 如果直接讓mozilla輸出到打印機,中文不能正常打印而是以方框顯示。因此需要采用間接的方法,打印時,選擇打印到文件 mozilla.ps,然後: ps2ps mozilla.ps out.ps lpr out.ps 也可以先打印成mozilla.ps,然後選擇菜單的“文件/打印/打印機屬性”,在打印命令欄設定如下: ps2ps mozilla.ps out.ps && lpr out.ps && rm mozilla.ps out.ps -f 以上命令輸入一次後就不用再輸入第二次了。再選直接打印到打印機,每次打印完後會把/home/USER目錄下的mozilla.ps和out.ps文件刪掉,以便下次打印其他文檔。 這樣就實現了mozilla的中文打印(謝謝kite兄指教)。 四、其他程序的中文打印 試驗過gedit和starsuite6.0,均在安裝cups並設置好打印機後,直接支持中文打印。 abiWord的中文打印支持需另行設置,我沒有測試,請參考最後附的參考文檔。 其他的程序,如果直接打印不支持中文,可看看其是否有生成.ps文件的打印選項,然後嘗試類似mozilla的方式進行打印。 基於qt的程序按上面的方法設置後似乎還不能支持中文打印,我測試過kedit,中文打印出來是亂碼。 參考文檔:《Slackware 8.1上的中文列印》 http://zope.slat.org/Members/Keanu/...cprint.stx/view



lpr out.ps 也可以先打印成mozilla.ps,然後選擇菜單的“文件/打印/打印機屬性”,在打印命令欄設定如下: ps2ps mozilla.ps out.ps && lpr out.ps && rm mozilla.ps out.ps -f 以上命令輸入一次後就不用再輸入第二次了。再選直接打印到打印機,每次打印完後會把/home/USER目錄下的mozilla.ps和out.ps文件刪掉,以便下次打印其他文檔。 這樣就實現了mozilla的中文打印(謝謝kite兄指教)。 四、其他程序的中文打印 試驗過gedit和starsuite6.0,均在安裝cups並設置好打印機後,直接支持中文打印。 abiWord的中文打印支持需另行設置,我沒有測試,請參考最後附的參考文檔。 其他的程序,如果直接打印不支持中文,可看看其是否有生成.ps文件的打印選項,然後嘗試類似mozilla的方式進行打印。 基於qt的程序按上面的方法設置後似乎還不能支持中文打印,我測試過kedit,中文打印出來是亂碼。 參考文檔:《Slackware 8.1上的中文列印》 http://zope.slat.org/Members/Keanu/...cprint.stx/view



Copyright © Linux教程網 All Rights Reserved