latex中文粗斜体的问题

187 views
Skip to first unread message

Zhang Le

unread,
May 18, 2006, 1:28:33 PM5/18/06
to 深圳 LinuxUnix 用户组
除了替换,还有没有其他解决方法?

Ji YongGang

unread,
May 18, 2006, 9:02:46 PM5/18/06
to sz...@googlegroups.com
2006/5/19, Zhang Le <robert....@gmail.com>:
> 除了替换,还有没有其他解决方法?
>

你指的是替换文章中的粗斜体标记,还是系统的字体?

-- jungle

Zhang Le

unread,
May 18, 2006, 10:47:18 PM5/18/06
to sz...@googlegroups.com

http://learn.tsinghua.edu.cn:8080/2001315450/tex/tex_chinese.html
我看了这个

我的机器现在既可以使用GBK,也可以用UTF8
前者是根据这个做的
http://zh.gentoo-wiki.com/HOWTO_teTeX
后者是根据你的大作

我发现粗体是没有问题的,而且似乎不是使用的替换
使用GBK的话,斜体也是没有问题的

UTF8的话
我在c70song.fd加了几行,改成这样
\DeclareFontShape{C70}{song}{m}{n}{<-> CJK * song}{}
\DeclareFontShape{C70}{song}{bx}{n}{<-> CJKb * song}{\CJKbold}
\DeclareFontShape{C70}{song}{m}{it}{<-> CJK * songsl}{}
\DeclareFontShape{C70}{song}{bx}{it}{<-> CJKb * songsl}{\CJKbold}
\DeclareFontShape{C70}{song}{m}{sl}{<-> CJK * songsl}{}
\DeclareFontShape{C70}{song}{bx}{sl}{<-> CJKb * songsl}{\CJKbold}
不过提示这个错误
! Font C70/song/m/it/12/65=songsl65 at 12.0pt not loadable: Metric (TFM) file n
ot found.
应该是缺少这样的文件
/usr/local/share/texmf/fonts/tfm/chinese/gbksong/gbksongsl94.tfm
不知道怎样可以生成

--
Zhang Le, Robert
Linux Engineer/Trainer

Ji YongGang

unread,
May 18, 2006, 11:13:55 PM5/18/06
to sz...@googlegroups.com
在 06-5-19,Zhang Le<robert....@gmail.com> 写道:

> On 5/19/06, Ji YongGang <jung...@gmail.com> wrote:
>
> > 2006/5/19, Zhang Le <robert....@gmail.com>:
> > > 除了替换,还有没有其他解决方法?
> > >
> >
> > 你指的是替换文章中的粗斜体标记,还是系统的字体?
>
> http://learn.tsinghua.edu.cn:8080/2001315450/tex/tex_chinese.html
> 我看了这个
>
> 我的机器现在既可以使用GBK,也可以用UTF8
> 前者是根据这个做的
> http://zh.gentoo-wiki.com/HOWTO_teTeX
> 后者是根据你的大作
>

那个脚本里面生成 tfm 是先生成 pt1 再转成 tfm 的。

>
> UTF8的话
> 我在c70song.fd加了几行,改成这样
> \DeclareFontShape{C70}{song}{m}{n}{<-> CJK * song}{}
> \DeclareFontShape{C70}{song}{bx}{n}{<-> CJKb *
> song}{\CJKbold}
> \DeclareFontShape{C70}{song}{m}{it}{<-> CJK * songsl}{}
> \DeclareFontShape{C70}{song}{bx}{it}{<-> CJKb *
> songsl}{\CJKbold}
> \DeclareFontShape{C70}{song}{m}{sl}{<-> CJK * songsl}{}
> \DeclareFontShape{C70}{song}{bx}{sl}{<-> CJKb *
> songsl}{\CJKbold}
> 不过提示这个错误
> ! Font C70/song/m/it/12/65=songsl65 at 12.0pt not loadable: Metric (TFM)
> file n
> ot found.
> 应该是缺少这样的文件
> /usr/local/share/texmf/fonts/tfm/chinese/gbksong/gbksongsl94.tfm
> 不知道怎样可以生成
>

用 ttf2tfm 直接生成 tfm 的时候可以加上 -s 参数生成斜体。

-- jungle

Zhang Le

unread,
May 19, 2006, 1:42:34 AM5/19/06
to sz...@googlegroups.com
不知道为什么找不到Unicode.sfd,拷到当前目录下可以解决
[zhangle@adriano local] $ ttf2tfm simsun.ttf -P 3 -E 1 song@Unicode@
This is ttf2tfm version 1.4
ttf2tfm: ERROR: Cannot find subfont definition file `Unicode.sfd'.
[zhangle@adriano local] $ locate .sfd
/usr/lib/mozilla-thunderbird/defaults/messenger/SpamPal.sfd
/usr/lib/mozilla-thunderbird/defaults/messenger/SpamAssassin.sfd
/usr/share/texmf/ttf2pk/UJIS.sfd
/usr/share/texmf/ttf2pk/EUC.sfd
/usr/share/texmf/ttf2pk/UBig5.sfd
/usr/share/texmf/ttf2pk/Unicode.sfd
/usr/share/texmf/ttf2pk/UGB.sfd
/usr/share/texmf/ttf2pk/UKS.sfd
/usr/share/texmf/ttf2pk/UBg5plus.sfd
/usr/share/texmf/ttf2pk/Big5.sfd
/usr/share/texmf/ttf2pk/UGBK.sfd
/usr/share/texmf/ttf2pk/SJIS.sfd
/home/zhangle/texmf/fonts/sfd/UGBK.sfd
[zhangle@adriano local] $ cp /usr/share/texmf/ttf2pk/Unicode.sfd .
[zhangle@adriano local] $ ttf2tfm simsun.ttf -P 3 -E 1 song@Unicode@
This is ttf2tfm version 1.4
...

Zhang Le

unread,
May 19, 2006, 3:51:36 AM5/19/06
to sz...@googlegroups.com
有点想不通
fonts/map/dvips/local/song.map里我已经加上了
……
songls5b SimSun-5b " .167 SlantFont " <song5b.pfb
……
这样的映射
也updmap过了

可是xdvi碰到songsl5b的时候还是不会去找song5b.pfb,只会找pk
access("./song20.ovf", R_OK) = -1 ENOENT (No such file or directory)
access("./song20.vf", R_OK) = -1 ENOENT (No such file or directory)
access("./song20.pfb", R_OK) = -1 ENOENT (No such file or directory)
access("/home/zhangle/texmf/fonts/type1/local/song/song20.pfb", R_OK) = 0
stat64("/home/zhangle/texmf/fonts/type1/local/song/song20.pfb",
{st_mode=S_IFREG|0644, st_size=11643, ...}) = 0
access("./songsl5b.ovf", R_OK) = -1 ENOENT (No such file or directory)
access("./songsl5b.vf", R_OK) = -1 ENOENT (No such file or directory)
access("./songsl5b.720pk", R_OK) = -1 ENOENT (No such file or directory)
access("./dpi720/songsl5b.pk", R_OK) = -1 ENOENT (No such file or directory)
access("./songsl5b.720pk", R_OK) = -1 ENOENT (No such file or directory)

Ji YongGang

unread,
May 19, 2006, 5:01:39 AM5/19/06
to sz...@googlegroups.com
在 06-5-19,Zhang Le<robert....@gmail.com> 写道:

ovf,怎么和 omega 搅和到一起去了,看不明白...

-- jungle

Zhang Le

unread,
May 19, 2006, 10:12:36 AM5/19/06
to sz...@googlegroups.com
On 5/19/06, Zhang Le <robert....@gmail.com> wrote:
> 有点想不通
> fonts/map/dvips/local/song.map里我已经加上了
> ……
> songls5b SimSun-5b " .167 SlantFont " <song5b.pfb
应该是songsl5b
ft,这样的错误
sigh
> ……
> 这样的映射

Zhang Le

unread,
May 19, 2006, 10:44:18 AM5/19/06
to sz...@googlegroups.com
最近还看了一篇文章,http://jjgod.3322.org/2005/08/30/about-tex-fonts/
了解了一些内幕
原来latex生成dvi的时候只是把字的位置圈定出来
xdvi的时候才会去找相应的字体,把字画出来
今天在第二个环节犯了个低级错误

jungle, 我作了个cvtfont.sh的补丁
这样utf8下可以用斜体了

cvtfont-italic.patch

Ji YongGang

unread,
May 20, 2006, 3:03:27 AM5/20/06
to sz...@googlegroups.com
在 06-5-19,Zhang Le<robert....@gmail.com> 写道:
> 最近还看了一篇文章,http://jjgod.3322.org/2005/08/30/about-tex-fonts/

不错,这篇文章的其他部分在哪里,我没找到。

> jungle, 我作了个cvtfont.sh的补丁
> 这样utf8下可以用斜体了
>

多谢,已经更新到我那篇文章里面。:)

-- jungle

Reply all
Reply to author
Forward
0 new messages