Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Type 1矢量字体+UTF-8 TeX源码支持出炉!!!

4 views
Skip to first unread message

内含子

unread,
Jan 9, 2006, 11:30:01 AM1/9/06
to
相关文件下载: http://www2.intron.ac/pubpic/pdfpt1/

功能:生成嵌入Type 1字体的PS/PDF文件,支持UTF-8编码的TeX源文件。

缺憾:尚未实现Unicode编码CID安排的字体管理,也就不能正确复制出文字。
(那就像Adobe Reader附带的说明书Reader.pdf中的SongStd Light字体)。

参考:本版2005年9月14日 stoneboy的文章《让 CJK 在 UTF8 环境下工作》
Type 3字体比Type 1字体在电子管/液晶显示器上有更好的显示效果。
Type 3字体的伪粗体显示效果也比Type 1字体要好得多。

准备工作,预先安装如下port:
print/dvipsk-tetex
chinese/CJK
chinese/ttf2pt1 (其实对于UTF-8,安装print/ttf2pt1即可)
可选安装Unicode TTF字体x11-fonts/cyberbit-ttfonts

1.脚本cvtfont.sh:用于转换、安装TTF字体。
由于要产生大量中间文件,所以最好在空间足够的空目录中使用。
用法: sh cvtfont.sh TTF文件名 TeX内部名 TeX源码引用名
1)“TeX内部名”: 用于命名texmf*目录中的*.tfm, *.afm等文件的名字,
注意不要与texmf*目录中其它文件名冲突。
2)“TeX源码引用名”: 在TeX源代码中指定字体时用的名字,例如:
\begin{CJK}{UTF8}{cyberbitpt1}
其中“cyberbitpt1”就是我说的“源码引用名”。
我习惯于用后缀“pt1”表示“PostScript Type 1”,以区别于以往
ttf2pk生成的Type 3字体。
举例(注意:这一行比较长,实际只有一条命令):

sh cvtfont.sh /usr/X11R6/lib/X11/fonts/TrueType/Cyberbit.ttf \
cyberbit cyberbitpt1

会生成cyberbit??.afm, cyberbit??.tfm等文件,及c70cyberbitpt1.fd。

TTF字体除了CyberBit Unicode字体(port: x11-fonts/cyberbit-ttfonts),
文鼎免费字体也可以使用,例如(注意:这条命令比较长):

sh cvtfont.sh /usr/local/share/fonts/TrueType/gbsn00lp.ttf \
arscsong arscsongpt1

(注意各个名称要与port CJK安装的argbsung??.tfm等文件相区别)

只是文鼎的GB2312字体只包含了一些西文字型和GB2312字型,而像GB12345等
扩展字形则未包含,所以按Unicode位面分成子字体后有大量的字型空位,
看上去转换速度很快,远不如CyberBit字体的字型齐全。

文件被安装到以下目录:
/usr/local/share/texmf/fonts/afm/local
/usr/local/share/texmf/fonts/tfm/local
/usr/local/share/texmf/fonts/type1/local
/usr/local/share/texmf/dvips/local
/usr/local/share/texmf/fonts/map/dvips/local
/usr/local/share/texmf/tex/latex/CJK/local
还会在 /usr/local/share/texmf-config/web2c/updmap.cfg 尾部添加新行。


2.脚本uninstall.sh,用于删除*所有*由cvtfont.sh安装的字体。
在此过程中会启动vi要求用户手工删除updmap.cfg的末几行。

3.样例TeX文件utf8.tex,供测试用。
生成其字体的方法见上面处理CyberBit字体的例子。

pdflatex utf8.tex

生成嵌入Type 1字体的PDF文件。

4.样例文件utf8.pdf,我生成的PDF文件。供大家对比参考。

--
[1;33m我的实验室: [37;44mhttp://www.intron.ac/ [33;40m
[32m


[m [1;35m※ 来源:·水木社区 newsmth.net·[FROM: 221.221.17.*] [m

Ji YongGang

unread,
Jan 14, 2006, 2:07:44 AM1/14/06
to

根据你的脚本,我在 NetBSD 下稍作修改,也可以使用了,多谢!

附件是修改后的 patch,修改了两个方面:

1. 适应 teTeX3 的 tds
2. 安装到 TEXMFHOME,这样可以不使用 root 权限

-- jungle

patch.diff
0 new messages