LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2384|回复: 9

有谁知道怎样使用 ttf2pt1 ?

[复制链接]
发表于 2002-6-26 16:52:11 | 显示全部楼层 |阅读模式
最近下载了一个能把 TTF 字体转变成 Type1 字体的软件(ttf2pt1),但不知怎么用,谁能告诉我?
发表于 2002-6-26 21:45:28 | 显示全部楼层
哪个弟兄知道,请为弟兄们传道,多谢!
 楼主| 发表于 2002-6-27 08:36:58 | 显示全部楼层
我在网上找了一个 SHELL 脚本(ttf2pt1) ,但是不能运行???
好像提示不能发现目录(没认真看,有点忘了)

脚本内容如下:

    #!/bin/sh
    #
    # By Edward G.J. Lee 2001.11.25
    # This code is Public Domain.
    #
    if [ $# -ne 1 ]
    then
      echo "Usage: `basename $0` your.ttf"
      exit 1
    fi
   
    echo
    echo "Now create *.t1a and *.enc and *.afm files. Wait... "
    echo
    FONTNAME=$1
    MAPFILE=/usr/local/share/ttf2pt1/maps/cugb.map
    n=1
    while [ $n -lt 10 ]
    do
      m=0$n
      ttf2pt1 -GE -pft -Ohub -W0 -L $MAPFILE+$m $FONTNAME ${FONTNAME%.ttf}$m
      n=`expr $n + 1`
    done
   
    m=10
    while [ $m -lt 56 ]
    do
      ttf2pt1 -GE -pft -Ohub -W0 -L $MAPFILE+$m $FONTNAME ${FONTNAME%.ttf}$m
      m=`expr $m + 1`
    done
   
    # avoid dvips(k)(before v5.86) t1part module bug.
    #
    perl -pi -e 's/_/Z/g' *.t1a *.afm
   
    echo
    echo "Now create *.pfb, wait... "
    echo
    for ps in *.t1a
    do
      t1asm -b $ps > ${ps%.t1a}.pfb
    done
   
    echo
    echo "Now create *.tfm, wait... "
    echo
    for afm in *.afm
    do
      afm2tfm $afm
    done
   
    AFM=${FONTNAME%.ttf}-afm
    TFM=${FONTNAME%.ttf}-tfm
    PFB=${FONTNAME%.ttf}-pfb
    ENC=${FONTNAME%.ttf}-enc
    rm -f *.t1a
    mkdir -p $AFM $TFM $PFB $ENC
    mv -f *.enc $ENC
    mv -f *.afm $AFM
    mv -f *.tfm $TFM
    mv -f *.pfb $PFB
    echo
    echo "OK, all done. :-)"
    echo
发表于 2002-6-27 08:43:53 | 显示全部楼层
兄弟,把这个程式另存为以ttf2pt1.bin
然后在控制台下运行
#sh ttf2pt1.bin

#bsh ttf2pt1.bin
试一下,我说的也不一定正确,我原来用过,也是自己试出来的。大体上差不多。。。请有经验的弟兄来指教。。多谢!
 楼主| 发表于 2002-6-28 08:59:53 | 显示全部楼层
北南南北 兄,我按你的方法去做,可是运行时说语句有错误



#!/bin/sh
#
# By Edward G.J. Lee 2001.11.25
# This code is Public Domain.
#
if [ $# -ne 1 ]
then
echo "Usage: `basename $0` your.ttf"
exit 1
fi

echo
echo "Now create *.t1a and *.enc and *.afm files. Wait... "
echo
FONTNAME=$1
MAPFILE=/usr/local/share/ttf2pt1/maps/cugb.map
n=1
while [ $n -lt 10 ]
do
m=0$n
ttf2pt1 -GE -pft -Ohub -W0 -L $MAPFILE+$m $FONTNAME ${FONTNAME%.ttf}$m
n=`expr $n + 1`
done

m=10
while [ $m -lt 56 ]
do
ttf2pt1 -GE -pft -Ohub -W0 -L $MAPFILE+$m $FONTNAME ${FONTNAME%.ttf}$m
m=`expr $m + 1`
done

# avoid dvips(k)(before v5.86) t1part module bug.
#
perl -pi -e 's/_/Z/g' *.t1a *.afm

echo
echo "Now create *.pfb, wait... "
echo
for ps in *.t1a
do
t1asm -b $ps > ${ps%.t1a}.pfb
done

echo
echo "Now create *.tfm, wait... "
echo
for afm in *.afm
do // 就是这一行
afm2tfm $afm
done

AFM=${FONTNAME%.ttf}-afm
TFM=${FONTNAME%.ttf}-tfm
PFB=${FONTNAME%.ttf}-pfb
ENC=${FONTNAME%.ttf}-enc
rm -f *.t1a
mkdir -p $AFM $TFM $PFB $ENC
mv -f *.enc $ENC
mv -f *.afm $AFM
mv -f *.tfm $TFM
mv -f *.pfb $PFB
echo
echo "OK, all done. :-)"
echo
发表于 2002-6-28 09:16:16 | 显示全部楼层
这个试过了吗???不要急,我再想点办法。。。请高手兄弟帮助。。。多谢了。
#bash ttf2pt1.bin
 楼主| 发表于 2002-7-1 14:42:49 | 显示全部楼层
北南南北 兄 ,还是老样子,有没有其他办法?
发表于 2002-7-1 14:55:08 | 显示全部楼层

兄弟。。这样试一下。。。。

兄弟,把这个程式另存为以ttf2pt1.bin
然后在控制台下运行
#sh ttf2pt1.sh

#bash ttf2pt1.sh

请有经验的弟兄来指教。。多谢!
 楼主| 发表于 2002-7-2 14:43:00 | 显示全部楼层
还是老样子,我又找了一个 TTF 工具(也是 SHELL 脚本),安装后运行也出现了同样的现象,不知是不是我的 RH7.2 有问题?
发表于 2002-7-2 15:12:15 | 显示全部楼层
不是72的问题,是我们没有得到方法,我再问一下会编程的吧。不要急。等我问一下看看。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表