LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 4217|回复: 27

gentoo下xpdf中文解决方法(包括标签的中文)

[复制链接]
发表于 2004-5-27 00:41:47 | 显示全部楼层 |阅读模式
1.首先下载的penny的补丁了,就是那个附件(显示标签的中文)
   保存到/usr/portage/app-text/xpdf/files/目录下面
   修改xpdf-2.03.ebuild(3.0以上的版本看下面的回贴)如下所示

  1. # Copyright 1999-2004 Gentoo Technologies, Inc.
  2. # Distributed under the terms of the GNU General Public License v2
  3. # $Header: /home/cvsroot/gentoo-x86/app-text/xpdf/xpdf-2.03.ebuild,v 1.8 2004/01/31 19:05:48 lanius Exp $

  4. MY_PV=${PV/.1/pl1}

  5. S=${WORKDIR}/${PN}-${MY_PV}
  6. DESCRIPTION="An X Viewer for PDF Files"
  7. HOMEPAGE="http://www.foolabs.com/xpdf/"
  8. SRC_URI="ftp://ftp.foolabs.com/pub/xpdf/${PN}-${MY_PV}.tar.gz"

  9. LICENSE="GPL-2"
  10. SLOT="0"
  11. KEYWORDS="x86 ~ppc sparc alpha hppa ~amd64 ia64"
  12. IUSE="motif"

  13. DEPEND="motif? ( virtual/x11
  14.         x11-libs/openmotif )
  15.         >=media-libs/freetype-2.0.5
  16.         >=media-libs/t1lib-1.3
  17.         virtual/ghostscript"
  18. [color=red]
  19. src_unpack() {
  20.         unpack ${P}.tar.gz
  21.         cd ${S}
  22.         epatch ${FILESDIR}/xpdf-2.03.diff.gz
  23. }
  24. [/color]
  25. src_compile() {
  26.         econf \
  27.                 --enable-freetype2 \
  28.                 --with-freetype2-includes=/usr/include/freetype2 \
  29.                 --with-gzip || die

  30.         make ${MAKEOPTS} || die
  31. }

  32. src_install() {
  33.         make DESTDIR=${D} install || die
  34.         prepallman
  35.         dodoc README ANNOUNCE CHANGES
  36.         insinto /etc
  37.         doins ${FILESDIR}/xpdfrc
  38. }

  39. pkg_postinst() {
  40.         einfo
  41.         einfo "HINT: To have even nicer results add these lines to your ~/.xpdfrc"
  42.         einfo
  43.         einfo "  include         /etc/xpdfrc"
  44.         einfo "  t1libControl    high"
  45.         einfo "  freetypeControl high"
  46.         einfo
  47. }
复制代码

红色部分为添加的部分
  emerge这个包
  emerge xpdf-chinese-simplified(显示中文的内容)
2.配置:
修改/etc/xpdfrc成如下所示

  1. textEncoding GBK
  2. displayFontT1 Times-Roman           /usr/share/ghostscript/fonts/n021003l.pfb
  3. displayFontT1 Times-Italic          /usr/share/ghostscript/fonts/n021023l.pfb
  4. displayFontT1 Times-Bold            /usr/share/ghostscript/fonts/n021004l.pfb
  5. displayFontT1 Times-BoldItalic      /usr/share/ghostscript/fonts/n021024l.pfb
  6. displayFontT1 Helvetica             /usr/share/ghostscript/fonts/n019003l.pfb
  7. displayFontT1 Helvetica-Oblique     /usr/share/ghostscript/fonts/n019023l.pfb
  8. displayFontT1 Helvetica-Bold        /usr/share/ghostscript/fonts/n019004l.pfb
  9. displayFontT1 Helvetica-BoldOblique /usr/share/ghostscript/fonts/n019024l.pfb
  10. displayFontT1 Courier               /usr/share/ghostscript/fonts/n022003l.pfb
  11. displayFontT1 Courier-Oblique       /usr/share/ghostscript/fonts/n022023l.pfb
  12. displayFontT1 Courier-Bold          /usr/share/ghostscript/fonts/n022004l.pfb
  13. displayFontT1 Courier-BoldOblique   /usr/share/ghostscript/fonts/n022024l.pfb
  14. displayFontT1 Symbol                /usr/share/ghostscript/fonts/s050000l.pfb
  15. displayFontT1 ZapfDingbats          /usr/share/ghostscript/fonts/d050000l.pfb
  16. #----- begin Chinese Simplified support package (2002-apr-18)
  17. cidToUnicode    Adobe-GB1       /usr/share/xpdf/chinese-simplified/Adobe-GB1.cidToUnicode
  18. unicodeMap      ISO-2022-CN     /usr/share/xpdf/chinese-simplified/ISO-2022-CN.unicodeMap
  19. unicodeMap      EUC-CN          /usr/share/xpdf/chinese-simplified/EUC-CN.unicodeMap
  20. unicodeMap      GBK             /usr/share/xpdf/chinese-simplified/GBK.unicodeMap
  21. cMapDir         Adobe-GB1       /usr/share/xpdf/chinese-simplified/CMap
  22. toUnicodeDir                    /usr/share/xpdf/chinese-simplified/CMap
  23. displayCIDFontX Adobe-GB1       "-*-simsun-medium-r-normal-*-%s-*-*-*-*-*-gb2312.1980-0" ISO-2022-CN
  24. #----- end Chinese Simplified support package
复制代码


在~/.Xdefaults里面加入资源项

xpdf*.fontList: -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1;-misc-simsun-medium-r-normal--12-*-*-*-*-*-gbk-0:

注意标点,另外确保使用的字体的确存在,然后

xrdb -merge ~/.Xdefaults

使修改生效
ok!enjoy吧!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2004-5-27 00:43:09 | 显示全部楼层
贴张图看看效果

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2004-5-27 00:53:51 | 显示全部楼层
/me 哭笑不得
 楼主| 发表于 2004-5-27 01:04:22 | 显示全部楼层
penny向你道歉,我已经修正了!
发表于 2004-5-27 01:22:14 | 显示全部楼层
可是,我按照如上修改后,运行xpdf,提示
========================================
X Error of failed request:  BadFont (invalid Font parameter)
  Major opcode of failed request:  55 (X_CreateGC)
  Resource id in failed request:  0x2200010
  Serial number of failed request:  148
  Current serial number in output stream:  153
========================================
连xpdf也不能运行了
发表于 2004-5-27 01:26:05 | 显示全部楼层
 楼主| 发表于 2004-5-27 01:36:45 | 显示全部楼层
呵呵加入收藏夹!
发表于 2004-5-27 05:00:44 | 显示全部楼层
我照连接里的改了,结果和orphen一样
发表于 2004-5-27 09:30:09 | 显示全部楼层
那我也说说我的xpdf3.00的中文解决办法

代码:
# USE="cjk" emerge /usr/portage/app-text/xpdf/xpdf-3.00-r1-ebuild

这个将自动打好一个中文的补丁/usr/portage/app-text/xpdf/files/xpdf-3.00-trutype.diff.gz

然后下载xpdf的简体中文包和繁体中文包,我放在了~/.xpdf/里。我得xpdf的配置文件为~/.xpdfrc
代码:
displayFontT1 Times-Roman           /usr/share/ghostscript/fonts/n021003l.pfb
displayFontT1 Times-Italic          /usr/share/ghostscript/fonts/n021023l.pfb
displayFontT1 Times-Bold            /usr/share/ghostscript/fonts/n021004l.pfb
displayFontT1 Times-BoldItalic      /usr/share/ghostscript/fonts/n021024l.pfb
displayFontT1 Helvetica             /usr/share/ghostscript/fonts/n019003l.pfb
displayFontT1 Helvetica-Oblique     /usr/share/ghostscript/fonts/n019023l.pfb
displayFontT1 Helvetica-Bold        /usr/share/ghostscript/fonts/n019004l.pfb
displayFontT1 Helvetica-BoldOblique /usr/share/ghostscript/fonts/n019024l.pfb
displayFontT1 Courier               /usr/share/ghostscript/fonts/n022003l.pfb
displayFontT1 Courier-Oblique       /usr/share/ghostscript/fonts/n022023l.pfb
displayFontT1 Courier-Bold          /usr/share/ghostscript/fonts/n022004l.pfb
displayFontT1 Courier-BoldOblique   /usr/share/ghostscript/fonts/n022024l.pfb
displayFontT1 Symbol                /usr/share/ghostscript/fonts/s050000l.pfb
displayFontT1 ZapfDingbats          /usr/share/ghostscript/fonts/d050000l.pfb

textEncoding GBK
displayCIDFontTT Adobe-GB1        /home/ftp/fonts/hvjcm.ttf
fontDir                         /home/ftp/fonts

#----- begin Chinese Simplified support package (2002-jun-17)
cidToUnicode    Adobe-GB1       /home/hans/.xpdf/chinese-simplified/Adobe-GB1.cidToUnicode
unicodeMap      ISO-2022-CN     /home/hans/.xpdf/chinese-simplified/ISO-2022-CN.unicodeMap
unicodeMap      EUC-CN          /home/hans/.xpdf/chinese-simplified/EUC-CN.unicodeMap
unicodeMap      GBK             /home/hans/.xpdf/chinese-simplified/GBK.unicodeMap
cMapDir         Adobe-GB1       /home/hans/.xpdf/chinese-simplified/CMap
toUnicodeDir                    /home/hans/.xpdf/chinese-simplified/CMap
#----- end Chinese Simplified support package

#----- begin Chinese Traditional support package (2002-apr-14)
cidToUnicode    Adobe-CNS1      /home/hans/.xpdf/chinese-traditional/Adobe-CNS1.cidToUnicode
unicodeMap      Big5            /home/hans/.xpdf/chinese-traditional/Big5.unicodeMap
unicodeMap      Big5ascii       /home/hans/.xpdf/chinese-traditional/Big5ascii.unicodeMap
cMapDir         Adobe-CNS1      /home/hans/.xpdf/chinese-traditional/CMap
toUnicodeDir                    /home/hans/.xpdf/chinese-traditional/CMap
#----- end Chinese Traditional support package

这里有一个奇怪的问题。
1,我参照过lucida的方法,不用打他自己的那个补丁
2,我自己emerge简体中文包和繁体中文包,使用/etc/xpdfrc作为默认的配置文件,不要~/.xpdfrc也不行。
3,我的配置文件~/.xpdfrc有一个比较令我苦笑不得的问题,刚开始时/home/hans我用~来代替,结果死活搞定不了中文。后来无聊改了一下,将~改为/home/hans,中文就搞定了。莫名!

另向大家推荐xpdf3,真的不错,感觉看起来效果比xpdf2.xx好。我这样配置看chinapub的文章一点问题也没有,没有提示一点错误。

来一张贴图(由于贴图大小有控制,我只好截取其中的一部分,截图左边为书签,右边为正文):

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2004-5-27 16:38:54 | 显示全部楼层
我是用了hvj的方法试了一下,正文没有问题了,但书签是乱码
如果将textEncoding GBK改为GB18030或GB2032,就只能显示英文的字符。
我的系统locale为gb18030
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表