pdflatex中文utf8问题求助

OOo,TeX,KO,ABI,GIMP,Picasa,ProE,QCAD,Inkscape,Kicad,Eagle
回复
abacan
帖子: 29
注册时间: 2006-09-10 11:01

pdflatex中文utf8问题求助

#1

帖子 abacan » 2007-08-31 1:23

6.06的系统,装了latex-cjk-chinese,使用CJK包,latex 中文 utf8 编码能正确生成 dvi 文件,dvipdfm 和 dvipdfmx 能正确生成 pdf 文档,直接对 tex 文件使用 pdflatex 编译失败,字体错误,不知道该怎么整。硬盘空间不够1G,估计装不了texlive。

原本能用 dvipdfm 就可以了,但是 emacs muse 输出 pdf 文档用的是 pdflatex ,改输出成 latex 文档,再修改输出的文件使用latex + dvipdfm 太麻烦。顺便给推荐点比较系统的介绍字体的资料。李果正的主页去看过,文章不少,但是不知道该从哪篇下手。
antonym55
帖子: 353
注册时间: 2007-04-03 9:52
联系:

#2

帖子 antonym55 » 2007-09-01 21:55

同问,我用docxygen生成的代码,如果是英文注释,就OK,如果中文,可以生成.dvi文件,生成PDF时有时会出错,简

单的测试下又没什么问题。

有没有好的工具可以生成UTF-8的字体呀?
abacan
帖子: 29
注册时间: 2006-09-10 11:01

#3

帖子 abacan » 2007-09-04 21:40

updmap-sys --listmaps
列出的结果只有gbsnu 的,没有gbsn的,内容如下
Map gbsnu.map

/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map
里面有没有关于 gbsnu 的映射行。
~/.texmf-var/fonts/map/pdftex/updmap/pdftex.map
里面有没有关于 gbsnu的映射行。
/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map 里关于gbsnu的内容如下
gbsnu00 gbsnu00 <gbsnu00.pfb
gbsnu01 gbsnu01 <gbsnu01.pfb
gbsnu02 gbsnu02 <gbsnu02.pfb
gbsnu03 gbsnu03 <gbsnu03.pfb
gbsnu04 gbsnu04 <gbsnu04.pfb
gbsnu20 gbsnu20 <gbsnu20.pfb
gbsnu21 gbsnu21 <gbsnu21.pfb
gbsnu22 gbsnu22 <gbsnu22.pfb
gbsnu23 gbsnu23 <gbsnu23.pfb
gbsnu24 gbsnu24 <gbsnu24.pfb
gbsnu25 gbsnu25 <gbsnu25.pfb
gbsnu26 gbsnu26 <gbsnu26.pfb
gbsnu30 gbsnu30 <gbsnu30.pfb
gbsnu31 gbsnu31 <gbsnu31.pfb
gbsnu32 gbsnu32 <gbsnu32.pfb
gbsnu4e gbsnu4e <gbsnu4e.pfb
gbsnu4f gbsnu4f <gbsnu4f.pfb
gbsnu50 gbsnu50 <gbsnu50.pfb
gbsnu51 gbsnu51 <gbsnu51.pfb
gbsnu52 gbsnu52 <gbsnu52.pfb
gbsnu53 gbsnu53 <gbsnu53.pfb
gbsnu54 gbsnu54 <gbsnu54.pfb
gbsnu55 gbsnu55 <gbsnu55.pfb
gbsnu56 gbsnu56 <gbsnu56.pfb
gbsnu57 gbsnu57 <gbsnu57.pfb
gbsnu58 gbsnu58 <gbsnu58.pfb
gbsnu59 gbsnu59 <gbsnu59.pfb
gbsnu5a gbsnu5a <gbsnu5a.pfb
gbsnu5b gbsnu5b <gbsnu5b.pfb
gbsnu5c gbsnu5c <gbsnu5c.pfb
gbsnu5d gbsnu5d <gbsnu5d.pfb
gbsnu5e gbsnu5e <gbsnu5e.pfb
gbsnu5f gbsnu5f <gbsnu5f.pfb
gbsnu60 gbsnu60 <gbsnu60.pfb
gbsnu61 gbsnu61 <gbsnu61.pfb
gbsnu62 gbsnu62 <gbsnu62.pfb
gbsnu63 gbsnu63 <gbsnu63.pfb
gbsnu64 gbsnu64 <gbsnu64.pfb
gbsnu65 gbsnu65 <gbsnu65.pfb
gbsnu66 gbsnu66 <gbsnu66.pfb
gbsnu67 gbsnu67 <gbsnu67.pfb
gbsnu68 gbsnu68 <gbsnu68.pfb
gbsnu69 gbsnu69 <gbsnu69.pfb
gbsnu6a gbsnu6a <gbsnu6a.pfb
gbsnu6b gbsnu6b <gbsnu6b.pfb
gbsnu6c gbsnu6c <gbsnu6c.pfb
gbsnu6d gbsnu6d <gbsnu6d.pfb
gbsnu6e gbsnu6e <gbsnu6e.pfb
gbsnu6f gbsnu6f <gbsnu6f.pfb
gbsnu70 gbsnu70 <gbsnu70.pfb
gbsnu71 gbsnu71 <gbsnu71.pfb
gbsnu72 gbsnu72 <gbsnu72.pfb
gbsnu73 gbsnu73 <gbsnu73.pfb
gbsnu74 gbsnu74 <gbsnu74.pfb
gbsnu75 gbsnu75 <gbsnu75.pfb
gbsnu76 gbsnu76 <gbsnu76.pfb
gbsnu77 gbsnu77 <gbsnu77.pfb
gbsnu78 gbsnu78 <gbsnu78.pfb
gbsnu79 gbsnu79 <gbsnu79.pfb
gbsnu7a gbsnu7a <gbsnu7a.pfb
gbsnu7b gbsnu7b <gbsnu7b.pfb
gbsnu7c gbsnu7c <gbsnu7c.pfb
gbsnu7d gbsnu7d <gbsnu7d.pfb
gbsnu7e gbsnu7e <gbsnu7e.pfb
gbsnu7f gbsnu7f <gbsnu7f.pfb
gbsnu80 gbsnu80 <gbsnu80.pfb
gbsnu81 gbsnu81 <gbsnu81.pfb
gbsnu82 gbsnu82 <gbsnu82.pfb
gbsnu83 gbsnu83 <gbsnu83.pfb
gbsnu84 gbsnu84 <gbsnu84.pfb
gbsnu85 gbsnu85 <gbsnu85.pfb
gbsnu86 gbsnu86 <gbsnu86.pfb
gbsnu87 gbsnu87 <gbsnu87.pfb
gbsnu88 gbsnu88 <gbsnu88.pfb
gbsnu89 gbsnu89 <gbsnu89.pfb
gbsnu8a gbsnu8a <gbsnu8a.pfb
gbsnu8b gbsnu8b <gbsnu8b.pfb
gbsnu8c gbsnu8c <gbsnu8c.pfb
gbsnu8d gbsnu8d <gbsnu8d.pfb
gbsnu8e gbsnu8e <gbsnu8e.pfb
gbsnu8f gbsnu8f <gbsnu8f.pfb
gbsnu90 gbsnu90 <gbsnu90.pfb
gbsnu91 gbsnu91 <gbsnu91.pfb
gbsnu92 gbsnu92 <gbsnu92.pfb
gbsnu93 gbsnu93 <gbsnu93.pfb
gbsnu94 gbsnu94 <gbsnu94.pfb
gbsnu95 gbsnu95 <gbsnu95.pfb
gbsnu96 gbsnu96 <gbsnu96.pfb
gbsnu97 gbsnu97 <gbsnu97.pfb
gbsnu98 gbsnu98 <gbsnu98.pfb
gbsnu99 gbsnu99 <gbsnu99.pfb
gbsnu9a gbsnu9a <gbsnu9a.pfb
gbsnu9b gbsnu9b <gbsnu9b.pfb
gbsnu9c gbsnu9c <gbsnu9c.pfb
gbsnu9e gbsnu9e <gbsnu9e.pfb
gbsnu9f gbsnu9f <gbsnu9f.pfb
gbsnufe gbsnufe <gbsnufe.pfb
gbsnuff gbsnuff <gbsnuff.pfb
gbsnuv gbsnuv <gbsnuv.pfb

pdflatex 运行后报错信息如下
$-1ó¦ó¦
(/usr/share/texmf/tex/latex/CJK/UTF8/c70gbsn.fdx) (./math.tockpathsea: Running mktextfm gbsnu07
mktextfm: Running mf-nowin -progname=mf \mode:=ljfour; mag:=1; nonstopmode; input gbsnu07
This is METAFONT, Version 2.71828 (Web2C 7.5.4)

kpathsea: Running mktexmf gbsnu07
! I can't find file `gbsnu07'.
<*> ...=ljfour; mag:=1; nonstopmode; input gbsnu07

Please type another input file name
! Emergency stop.
<*> ...=ljfour; mag:=1; nonstopmode; input gbsnu07

Transcript written on mfput.log.
grep: gbsnu07.log: No such file or directory
mktextfm: `mf-nowin -progname=mf \mode:=ljfour; mag:=1; nonstopmode; input gbsnu07' failed to make gbsnu07.tfm.
kpathsea: Appending font creation commands to missfont.log.

! Font C70/gbsn/bx/n/10/07=gbsnu07 at 10.0pt not loadable: Metric (TFM) file no
t found.
<to be read again>
relax
l.1 ...ion}{\numberline {1}¸$-1²ÕÈÊý©§}{3}{section.1}

?

! Package CJK Error: Invalid character code.

See the CJK package documentation for explanation.
Type H <return> for immediate help.
...

l.1 ...ion}{\numberline {1}¸$-1²ÕÈÊý©§}{3}{section.1}

?
! Undefined control sequence.
<argument> ...nk}{section.1}{\numberline {1}¸$-1²ÕÈÊý
$-1©§}\hyper@linkend
l.1 ...ion}{\numberline {1}¸$-1²ÕÈÊý©§}{3}{section.1}

?

! Package CJK Error: Invalid character code.

See the CJK package documentation for explanation.
Type H <return> for immediate help.
...

l.2 ...}{\numberline {1.1}¼«ÏÞ}{3}{subsection.1.1}

?

! Package CJK Error: Invalid character code.

See the CJK package documentation for explanation.
Type H <return> for immediate help.
...

l.3 ...1.1.1}Çó¼«Ï$-1±õ ×½·¨}{3}{subsubsection.1.1.1}

?

! Package CJK Error: Invalid character code.

See the CJK package documentation for explanation.
Type H <return> for immediate help.
...

l.3 ...1.1.1}Çó¼«Ï$-1±õ ×½·¨}{3}{subsubsection.1.1.1}

?

! Package CJK Error: Invalid character code.

See the CJK package documentation for explanation.
Type H <return> for immediate help.
...

l.4 ... {1.1.2}Á¬ÐøÐÔÅ$-1¨ÖÏ}{3}{subsubsection.1.1.2}

?

! Package CJK Error: Invalid character code.

See the CJK package documentation for explanation.
Type H <return> for immediate help.
...

l.4 ... {1.1.2}Á¬ÐøÐÔÅ$-1¨ÖÏ}{3}{subsubsection.1.1.2}

?

! Package CJK Error: Invalid character code.

See the CJK package documentation for explanation.
Type H <return> for immediate help.
...

l.4 ... {1.1.2}Á¬ÐøÐÔÅ$-1¨ÖÏ}{3}{subsubsection.1.1.2}

?
! Argument of \CJK@XX has an extra }.
<inserted text>
\par
l.4 ... {1.1.2}Á¬ÐøÐÔÅ$-1¨ÖÏ}{3}{subsubsection.1.1.2}

?

! Package CJK Error: Invalid character code.

See the CJK package documentation for explanation.
Type H <return> for immediate help.
...

l.4 ... {1.1.2}Á¬ÐøÐÔÅ$-1¨ÖÏ}{3}{subsubsection.1.1.2}

?

Underfull \hbox (badness 10000) in paragraph at lines 4--4
[][] [][]\C70/gbsn/m/n/10/00 l
! pdfTeX error (ext1): \pdfendlink cannot be used in vertical mode.
\close@pdflink ->\Hy@endcolorlink \pdfendlink

l.4 ... {1.1.2}Á¬ÐøÐÔÅ$-1¨ÖÏ}{3}{subsubsection.1.1.2}

No pages of output.
Transcript written on math.log.
tomguy
帖子: 702
注册时间: 2005-09-27 10:32

#4

帖子 tomguy » 2007-09-05 22:01

你把编码改成GBK的试试。

我用的是 7.04,装了 tetex 和 CJK 字库,使用 UTF8 编码一切正常。
abacan
帖子: 29
注册时间: 2006-09-10 11:01

#5

帖子 abacan » 2007-09-05 23:38

谢谢,因为使用emacs muse使用gbk不是很方便。

用/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map的内容覆盖~/.texmfvar/fonts/map/pdftex/updmap/pdftex.map的内容没有字体的报错了,剩下的错误提示是displaymath环境中使用\text造成的,改成\textrm问题就解决了,生成dvi时这个没问题。但是生成的pdf的书签是乱码。另外还有点疑惑为什么会有两个pdftex.map文件?HOME目录下的和var/lib下的有什么区别?
tomguy
帖子: 702
注册时间: 2005-09-27 10:32

#6

帖子 tomguy » 2007-09-08 2:10

我也不太明白,好像 linux 的配置文件都是先找主目录中的,主目录没有在去别处找。你试试把主目录中的那个配置文件删除看看。

pdf 书签乱码是一个问题,你需要一个专用的软件处理一下你编译出来的一个文件(好像是那个 aux 文件),然后再编译一次即可。网上有解决方法,搜一下即可。

你还要生成 dvi 文件?好像现在 pdflatex 比较流行。
xiechy
帖子: 1074
注册时间: 2006-01-18 15:01

#7

帖子 xiechy » 2007-09-08 12:53

tomguy 写了: 你还要生成 dvi 文件?好像现在 pdflatex 比较流行。
不支持eps~
ltkun
帖子: 1340
注册时间: 2006-01-10 19:09

#8

帖子 ltkun » 2007-09-08 17:55

这年头直接用ttf字体了可以
xetex
超级简单
tomguy
帖子: 702
注册时间: 2005-09-27 10:32

#9

帖子 tomguy » 2007-09-10 1:31

用 latex 还不支持 jpg 呢。

eps 转换到 pdf 只需要一个命令。
abacan
帖子: 29
注册时间: 2006-09-10 11:01

#10

帖子 abacan » 2007-09-10 12:50

tomguy 写了:我也不太明白,好像 linux 的配置文件都是先找主目录中的,主目录没有在去别处找。你试试把主目录中的那个配置文件删除看看。

pdf 书签乱码是一个问题,你需要一个专用的软件处理一下你编译出来的一个文件(好像是那个 aux 文件),然后再编译一次即可。网上有解决方法,搜一下即可。

你还要生成 dvi 文件?好像现在 pdflatex 比较流行。
谢谢,问题已经找到。Emacs muse生成的tex文件导言区的默认设置有问题,修改后就好了。
tomguy
帖子: 702
注册时间: 2005-09-27 10:32

#11

帖子 tomguy » 2007-09-15 23:05

:)
xiechy
帖子: 1074
注册时间: 2006-01-18 15:01

#12

帖子 xiechy » 2007-09-15 23:12

tomguy 写了:用 latex 还不支持 jpg 呢。

eps 转换到 pdf 只需要一个命令。
latex本身没有什么支不支持的概念吧,他是个tex扩展,本身不是二进制的。
eps到pdf确实可以,但是效果有时不好。而且eps专业软件用于输出的比较多。
回复