您的位置:首页 > 产品设计 > UI/UE

编译utf8编码的tex文件使用中文truetype

2012-03-22 19:18 459 查看
发信人: aickgaven (Michael), 信区: TeX

标 题: 编译utf8编码的tex文件使用中文truetype

发信站: 水木社区 (Fri Apr 21 12:51:50 2006), 站内

要从truetype安装新的中文GBK字体,使用hooklee的xGBKfonts

xGBKfonts -usesys -o c:\Downloads HWXW.ttf xinwei

将产生的文件移到localtexmf相应的位置。然后在updmap.cfg中加入关于type1

信息的map文件

initexmf -u initexmf --mkmaps

这样latex没有问题,dvips可以使用type1字体,dvipdfmx可以使用type1或者直

接使用truetype字体,只要编译使用

dvipdfmx -f cid-x.map *.dvi

就可以,pdflatex可以使用type1字体,若要直接使用truetype,在preamble中

加入\pdfmapfile{=cjk_ttf.map}。但是奇怪的是使用simsun或者华文的ttf编译

通过,使用方正的ttf产生的enc和map就始终出错……而dvipdfmx使用方正的ttf却

没有问题。

倘若tex文件是utf8编码的,也可以使用CJK。需要把

\begin{CJK}{GBK}{kai}

之类的改为

\begin{CJK}{UTF8}{}

当然也可以在最后一个花括号里加入song,kai之类的,但是如果文件中含有其

他语言编码的话会出错,可行的方法是

\begin{CJK}{UTF8}{cyberb}

不过里面的中文字体非常难看,可以在中文的地方改为

\CJKfamily{kai}

之类的。比如下面这个例子

----------------------------------------------------------------------------------------------

\documentclass[a4paper,11pt]{article}

\usepackage{CJK}

%\pdfmapfile{=cyberbit.map}

%\pdfmapfile{=ttf-unixinwei.map}

\begin{document}

\begin{CJK*}{UTF8}{}

\CJKfamily{kai}%中文

机遇与挑战并存,新的世界商务体系对并不成熟的中国服务业提出了新的要求。

当今中国服务业的国际化程度如何?从历史数据中又能否推测出中国服务业发展

国际化怎样的趋势?本文收集了近20年来中国的国际收支平衡表和其它相关数据

进行分析,并借鉴已有的研究成果,来浅谈这个问题。

\CJKfamily{cyberb}

%韩语

일부 시스템에서 Gabest Filter들이 연결되지 않던 문제

%德语

Alle Produkte werden auf einer größtmöglichen Anzahl von Plattformen

(Windows, Mac, Linux, Unix-Varianten, Mainframes) und

Entwicklungsumgebungen (COM, C, C++, Java, Perl, PHP, Python, Cobol,

RPG, and Tcl) angeboten.

%日语

PDFlib GmbH社は、ウェブサーバやデータベースサーバ上でオンデマンドのPDF

処理を可能にする、最先端のソフトウェア開発ツールを提供します。

%法语

Le Centre du cancer Roger Maris à Fargo, Dakota du Nord

\end{CJK*}

\end{document}

-------------------------------------------------------------------------------------

将上面的文件保存为utf8编码,用latex编译可以通过。注意需要有

c70cyberb.fd和c70kai.fd两个文件,如果没有可以参考下面aloft的例子,放在

localtexmf\tex\latex\CJK\UTF8\下

-------------------------------------------------------------------------------------

% This is the file c70kai.fd of the CJK package

% for using Asian logographs (Chinese/Japanese/Korean) with LaTeX2e

%

% created by Aloft <aloft@ctex.org>

%

% Version 4.6.0 (26-Nov-2005)

\def\fileversion{4.6.0}

\def\filedate{2005/11/25}

\ProvidesFile{c70kai.fd}[\filedate\space\fileversion]

% character set: Unicode U+0080 - U+FFFD

% font encoding: Unicode

\DeclareFontFamily{C70}{kai}{\hyphenchar \font\m@ne}

\DeclareFontShape{C70}{kai}{m}{n}{<-> CJK * unikai}{}

\DeclareFontShape{C70}{kai}{bx}{n}{<-> CJKb * unikai}{\CJKbold}

\DeclareFontShape{C70}{kai}{m}{sl}{<-> CJK * unikaisl}{}

\DeclareFontShape{C70}{kai}{bx}{sl}{<-> CJKb * unikaisl}{\CJKbold}

\DeclareFontShape{C70}{kai}{m}{it}{<-> CJK * unikaisl}{}

\DeclareFontShape{C70}{kai}{bx}{it}{<-> CJKb * unikaisl}{\CJKbold}

\endinput

---------------------------------------------------------------------------------

当然还要有tfm文件,一般在\localtexmf\fonts\tfm\bitstrea\cyberbit\和

\localtexmf\fonts\tfm\chinese\unikai(sl)下,如果没有可以参考下文自己产

生。这样产生的dvi文件可以用dvipdfmx编译为pdf,需要在cid-x.map中加入

unikai@Unicode@ UniGB-UTF16-H :0:simkai.ttf

unikaisl@Unicode@ UniGB-UTF16-H :0:simkai.ttf -s .167

cyberb@Unicode@ Identity-H :0:cyberbit.ttf

通过以上步骤就可以编译多语言的utf8 tex文件为pdf。

若要使用pdflatex编译utf8编码tex文件使用truetype字体需要有enc文件。将

\texmf\ttf2tfm\base下的Unicode.sfd以及ttf文件拷贝到

c:\temp

运行ttf2tfm

ttf2tfm simkai.ttf -w unikai@Unicode@

ttf2tfm simkai.ttf -w -s 0.167 unikaisl@Unicode@

ttf2tfm cyberbit.ttf -w cyberb@Unicode@

将产生的*.enc文件放入相应目录,如果没有tfm文件的也把tfm文件放入相应目

录,然后自己创建map文件,比如叫ttf-unikai.map和cyberbit.map,文件中是

类似

unikai00 <unikai00.enc <simkai.ttf

unikai01 <unikai01.enc <simkai.ttf

unikai02 <unikai02.enc <simkai.ttf

unikai03 <unikai03.enc <simkai.ttf

unikai04 <unikai04.enc <simkai.ttf

unikai20 <unikai20.enc <simkai.ttf

unikai21 <unikai21.enc <simkai.ttf

unikai22 <unikai22.enc <simkai.ttf

的内容。在tex文件的preamble中加入

\pdfmapfile{=cyberbit.map}

\pdfmapfile{=ttf-unixinwei.map}

这样就可以使用pdflatex编译了。产生utf8的type1字体没有试过。不知道在linux下怎么样

--

※ 来源:·水木社区 http://newsmth.net·[FROM: 162.105.106.*]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐