Wednesday, October 10, 2007

Fedora上配置Tex UTF-8 中文系统

文章来源:
http://reciteword.cosoft.org.cn/yaoguang/showarticle.php?category=myarticle&&doc
page=0&&newsid=25
作者:胡正
2007.9.18

为了制作中文PDF书籍文件,并解决PDF中文不能拷贝的问题,用最新的方法再次配置了一下
Tex系统,参考的文章是:
http://mailboxpublic.googlepages.com/texlive2007cjkchinesehowto

步骤如下:

1. 安装Tex Live 2007.
下载:
ftp://ftp.ctex.org/CTAN/systems/texlive/Images/texlive2007-live-20070212.iso.zip
unzip后mount上,运行install-tl.sh,按i就行了。
装完后编辑~/.bash_profile
PATH=/usr/local/texlive/2007/bin/i386-linux:$PATH

2. 生成字体文件。
mkdir ~/font
cd ~/font
cp /media/c/WINDOWS/Fonts/simsun.ttc .
yum install fontforge
cp /usr/local/texlive/2007/texmf-dist/source/latex/CJK/utils/subfonts/* ~/font/
cp /usr/local/texlive/2007/texmf/fonts/sfd/*.sfd ~/font/
time fontforge -script subfonts.pe simsun.ttc song Unicode.sfd
大概要个把小时。
编辑一个makemap文件,内容如下:
for i in *.tfm
do
cat >> song.map << EOF
${i%.tfm} ${i%.tfm} < ${i%.tfm}.pfb
EOF
done
然后chmod +x makemap
./makemap
编辑一个c70song.fd文件:
% This is c70song.fd for CJK package.
% created by Edward G.J. Lee
% modify by Yue Wang
\ProvidesFile{c70song.fd}
\DeclareFontFamily{C70}{song}{\hyphenchar \font\m@ne}
\DeclareFontShape{C70}{song}{m}{n}{<-> CJK * song}{}
\DeclareFontShape{C70}{song}{bx}{n}{<-> CJKb * song}{\CJKbold}
\endinput
最后拷贝文件:
cd ~/.texlive2007
cd texmf-var
mkdir -p fonts/map/dvips/CJK
mkdir -p fonts/tfm/CJK/song
mkdir -p fonts/type1/CJK/song
mkdir -p tex/latex/CJK/UTF8
cp ~/font/song.map fonts/map/dvips/CJK/
cp ~/font/*.tfm fonts/tfm/CJK/song
cp ~/font/*.pfb fonts/type1/CJK/song
cp ~/font/c70song.fd tex/latex/CJK/UTF8
更新系统:
texhash
updmap --enable Map song.map

3. 测试。
编辑一个test.tex文件:
\documentclass{article}
\usepackage{CJKutf8}
\begin{document}
\begin{CJK}{UTF8}{song}
你好!
\end{CJK}
\end{document}
然后
pdflatex test.tex
evince test.pdf,应该中文正常了,而且中文可以拷贝。搞定! :)

No comments: