这是命令 afm2pl,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
afm2pl - 将 AFM 字体规格转换为 TeX pl 字体规格
概要
AFM2PL [-p 编码文件[-o[-e 扩展因子[-s 倾斜因子]
[-f 字体尺寸[-k[-m 字母间距[-l likern_spec[-L likern_spec]
[-n] 输入文件[.afm] [输出文件[.pl]]
AFM2PL [--帮助] | [ - 版本]
商品描述
afm2pl 将 afm(Adobe Font Metric)文件转换为 pl(属性列表)文件,其中
轮到它可以转换为 tfm(TeX Font Metric)文件。 它通常保留字距和
连字,但也提供对它们的额外控制。
afm2pl 旨在部分替代它所基于的 afm2tfm。 和
afm2tfm,只能以迂回的方式保留字距和连字,并处理
其中有硬连线。
对于文本字体,Y&Y 的 texnansi 是一个很好的编码,可以与 afm2pl 一起使用。 它的性格
集合包括西方语言可能需要的所有重音字符,加上
许多印刷符号,不需要虚拟字体或单独的文本
配套字体。
对这种编码的完整 LaTeX 支持以 texnansi 包的形式提供,
这已经是 TeX Live 和 teTeX 的一部分。 这些发行版还包含编码
文件 texnansi.enc。
该发行版包含 texnansi 的大写和小写版本,即。 特纳努克
和 texnanlc,允许基于字体而不是基于宏的大写和小写,以及
熟悉的旧 ot1 编码加上 PostScript .enc 格式的一些变体(我包括
这些是因为它们似乎没有出现在 teTeX/TeX Live 中)。 但是,如果
你有使用这些的旧 afm2pl 生成的字体。
返回值:0 如果没有错误; 一个负数,表示丢失的字形数量,如果
否则转换成功,但缺少字形,如果出现错误,则为 1。
配置
-p 编码文件
默认为 afm 文件中指定的编码,最好匹配
字体文件中的编码(pfa 或 pfb)。 如果 afm2pl-name.enc 存在,afm2pl 将使用这个
file 而不是 name.enc,除非给出了选项 -n。 生成的映射文件条目
(见下文)指示 pdftex 或 dvi 驱动程序动态重新编码字体。
即时重新编码不需要虚拟字体。
-o
对 pl 文件中的所有字符代码使用八进制。
-e 扩展因子
加宽或缩小字符 扩展因子. 默认值为 1.0(自然宽度)。 不是
推荐[1]。
-s 倾斜因子
斜(斜)字由 倾斜因子. 也不推荐。
-f 字体尺寸
该值是关键字 afm2tfm 或逗号分隔的列表,最多五个
整数。 下面列出了这些参数,以及它们的默认值和它们的值
指定了 afm2tfm 关键字。 “空格”表示目标中空格的宽度
字体,当然最后一行除外。 请记住,设计大小为 1000,并且
所有数字必须是非负整数。
┌──────────────────┬────────────────────────┬────────── ──────────────────┐
│字体 尺寸 │ 默认 折扣值 │ afm2tfm 折扣值 │
├────────────────┼──────────────────────────┼────────── ────────────────┤
│伸展 │ 空间 div 2 │ 300 × 扩展因子 │
├────────────────┼──────────────────────────┼────────── ────────────────┤
│缩小 │ 空间 div 3 │ 100 × 扩展因子 │
├────────────────┼──────────────────────────┼────────── ────────────────┤
│额外 空间 │ 空格 div 3 │ 缺失 │
├────────────────┼──────────────────────────┼────────── ────────────────┤
│四 │ 2 × '0' 的宽度│ 1000 × 扩展因子 │
├────────────────┼──────────────────────────┼────────── ────────────────┤
│空间 │(空间源字体)× │(空间源字体)× │
│ │ 扩展因子 │ 扩展因子 │
└────────────────┴────────────────────────┴────────── ────────────────┘
对于固定间距字体,适用不同的值:
┌──────────────────┬────────────────────────┬──────────── ──────────────┐
│字体 尺寸 │ 默认 折扣值 │ afm2tfm 折扣值 │
├────────────────┼────────────────────────┼──────────── ──────────────┤
│伸展 │ 0 │ 0 │
├────────────────┼────────────────────────┼──────────── ──────────────┤
│缩小 │ 0 │ 0 │
├────────────────┼────────────────────────┼──────────── ──────────────┤
│额外 空间 │ 空间│ 失踪│
├────────────────┼────────────────────────┼──────────── ──────────────┤
│四 │ 2 × 字符宽度 │ 1000 × 扩展因子 │
├────────────────┼────────────────────────┼──────────── ──────────────┤
│空间 │ 字符宽度 │ 字符宽度 │
└────────────────┴──────────────────────┴────────────── ──────────────┘
仅指定非默认拉伸和收缩,例如 150,70 和非默认
,,10 的额外空间。
-k
保留原始连字。 此选项仅与正
字母间距; 请参阅有关字母间距和额外 ligkern 信息的部分。
-m 字母间距
信空间由 字母间距/1000 em(整数)。 这对于制作全大写很有用
排版更好看。 尝试一个值,例如 50 或 100。但请参阅有关
字母间距和额外的 ligkern 信息以了解详细信息。 不过,更好的选择是
让 pdftex 做字母间距。 microtype 包允许 LaTeX 用户访问
这项特征。
-l likern_spec, -L likern_spec
有关详细信息,请参阅有关额外 ligkern 信息的部分。
-n
没有前缀。 对于 .enc- 和 .lig 文件,程序通常首先在名称前加上
`afm2pl-'。 只有在没有找到带前缀的文件名时,才会搜索原始文件名
文档名称。 此选项可防止搜索带前缀的文件名。
-V
冗长。 如果打开,它会将丢失的字形数量报告给 stderr 及其
标准输出的名称。
- 帮帮我
显示简短的使用消息。
- 版
显示afm2pl的版本号。
地图文件 参赛作品
afm2pl 将 mapfile 条目写入与 pl 输出文件具有相同基名的文件中,但
扩展名为 .map。 它可用于 dvips 地图文件和 pdftex 地图文件。 它
假设 pfb 文件与 afm 文件具有相同的基本名称,并且必须下载。
您 五月 它们在许多情况下都能提供类似的结果。 至 手工编辑 Free Introduction 条目。
您可以配置 dvips 和 pdftex 以读取此附加地图文件或以其他方式添加
现有映射文件的条目。
单向阀 您的 地图文件! 为了减少名称冲突的可能性,.enc- 文件
是 afm2pl(ot1、ot1csc、ot1ital、ot1tt、texnanlc 和 texnanuc)的一部分
以 afm2pl- 开头。 .enc 文件在映射文件中被引用。 如果你有旧
使用这些 afm2pl 生成的 .tfm 文件,那么您应该更新它们的 mapfile 片段
并重新运行 updmap 或 updmap-sys。 或者您可以将相关的 enc 文件复制到您的个人或
本地 texmf 树在他们以前的非前缀名称下。
额外服务 利克恩 信息
桥梁 用户 旨在 明智的 至 离开 Free Introduction 混乱 单 和 至 接受 此 默认 行为。
可以通过多种方式修改 afm 文件中的连字和字距。 默认,
扫描编码文件以获取额外的 ligkern 规范,其格式为
如下面所描述的。 如果编码文件中没有ligkern规范,则额外
ligkern 规范将从文件 [afm2pl-]default.lig 中读取。 值为 0
likern_spec 意味着来自 afm 文件的连字和字距不会被篡改
值 1 指定默认行为。 还可以指定一个逗号分隔的列表
具有额外 ligkerns 规格的文件。
如果afm2pl是用kpathsea库编译的,那么会搜索这些文件
在 $TEXMF/fonts/lig 下。
备注 这 连字 和 核心 旨在 提示 此 排版 应用; 那里 is 没有 需要
至 下载 Free Introduction 信息 至 此 打印机 or 至 使 it 可使用 至 a DVI 驱动程序。
ligkern 信息的解析器几乎没有改变就继承自 afm2tfm。 一种
ligkern 规范可以具有以下形式之一:
字形名称1 字形名称2 轻操作 字形名称3 ;
这指定了一个连字。 可能的值 轻操作 是 =:, |=:, |=:>, =:|, =:|>, |=:|,
|=:|> 和 |=:|>>。 这些对应于 LIG、/LIG、/LIG>、LIG/、LIG/>、/LIG/、/LIG/>、
/LIG/>> 在 .pl 语法中; 请参阅 pltotf 文档和 .lig 文件中的
分布。
字形名称1 <> 字形名称2 ;
核心 字形名称1 as 字形名称2.
字形名称1 {} 字形名称2 ;
删除之间的字距 字形名称1 和 字形名称2. 任一字形名称的 * 值为
解释为通配符。
|| = 字形 ;
将(右)边界字符设置为 字形. 字形 可以是字形名称或插槽
编码向量。 选择一个不会出现在输出编码中的字形是
相当于根本不指定边界字符。 可以选择一个编码的字形名称
这不会发生在 afm 中。 事实上,这就是 default.lig 所做的: || = cwm;.
您可以将未编码字符的字距复制到边界字符。 下面,空间是
未编码字符:
|| <> 空格;
此 ligkern 规范应出现在删除空格 kerns 之前。
一个ligkern 规范应该包含在一行中。 一行可能包含多个
ligkern 规格,以空格分隔。 注意 ; (空格后跟分号)是
被认为是 ligkern 规范的一部分。 请参阅此文件中包含的 lig 文件
分配。 例子:
一 {} * ; * {} 一 ; 二 {} * ; * {} 二 ;
编码文件中具有 ligkern 规范的行应以 % LIGKERN 开头。
lig 文件中的 Ligkern 规范可以选择以这种方式开始。
字母间距 AND 额外服务 利克恩 信息
Letterspacing 对 ligkern 信息有各种副作用。 而不是简单地应用
额外的 ligkern 信息(请参阅上一节),完成以下操作:
1. 在正字母间距的情况下,本地连字被删除,除非 -k
选项被指定。
2. 像往常一样应用额外的 ligkern 信息,除非是阳性
字母间距不同的默认值适用:-l 0 被悄悄忽略,ligkern 注释
在编码文件中被忽略,并且读取 defpre.lig 而不是 default.lig。
3. 应用字母间距。 这会添加很多字距,并修改现有的字距。
4. 应用-L 指定的额外ligkern 信息。 唯一的 ligkern 规格
此处允许删除字距调整对(使用 {} 运算符)。 值 0
和 1 与 -l 参数具有相似的含义。 这款 调频 格式 具有 ROOM
仅由 关于 180x180 连字 和 字距调整 对。 这对于OT1编码来说已经足够了,
但是对于 texnansi 编码,必须删除相当多的 ligkern 规范。
pltotf 程序将删除 所有 如果连字和字距过多,则为 ligkern 信息
保持。 默认 lig 文件是 defpost.lig。 该文件抛出字距调整对
不太可能涉及字母间距,例如涉及重音的字距
或在左侧带有标点符号或右括号的字距。 它不添加
涉及边界字符的字母间距字距。 相反,字体空间增加了
两倍的字母间距。 defpost.lig 在 texnansi 的情况下抛出足够的字距
编码。 对于其他编码,您可能需要丢弃额外的字距调整对。
基于字体 上- AND 小写
该分布包括编码向量 texnanuc.enc 和 texnanlc.enc,它们产生
全大写和全小写字体
全大写字体的主要用途是页眉和节头。 如果这些
包含数学,那么基于宏的大写会产生令人不快的并发症。 例子:
afm2pl -p texnanuc ptmr8a ptmup8y
pttf ptmup8y
为了获得最佳效果,您应该添加一些字母间距。 在 LaTeX 中,最好使用
微型包装; 请参阅该软件包的文档。 但它也可以用
afm2pl:
afm2pl -p texnanuc -m 100 ptmr8a ptmup8y
这需要谨慎; 看上面。
您可以在 LaTeX 字体选择的上下文中使用这种新字体,如下所示:
\makeatletter
{\nfss@catcodes
\DeclareFontShape{LY1}{ptm}{m}{upp}{<-> ptmup8y}{}}
\makeatother
...
\ {开始}文件
...
{\fontshape{upp}\selectfont 大写文本}
请注意, upp 只是一个新创建的形状名称。
这款 sz 结扎 ß
请注意,texnanuc 编码没有为 sz 连字 ß 提供字形; 你要么
必须替换 ss 或提供基于宏的解决方案。 以下代码使用
通常的字形或替换字母 ss,取决于字形是否存在于
当前字体:
\def\ss{%
\setbox0\hbox{\char25}%
\ifnum\wd0=0 ss\else\box0\fi
}
在 LaTeX 中,此代码似乎运行良好,但有时您可能需要
插入\保护。 更好的解决方案可能涉及第六个参数
\DeclareFontShape 宏,但我无法让它发挥作用。
AFM2PL, 字体 AND 人造的 小帽子
Afm2pl 不做虚拟字体。 这意味着对于诸如人造小型股之类的东西
你必须转向别处,例如 fontinst 包,它是任何主流的一部分
TeX 分布。
在 texmf/tex/fontinst 下查找 fontinst 支持文件,它允许您生成一个
来自 afm2pl 生成的 tfm 文件的 smallcaps 字体(tfm 和 vf 文件)。 仅此套餐
支持texnansi编码。
对 OT1 编码做同样的事情应该没有真正的问题。 然而,有
需要处理的 OT1 编码的几种变体。 另外,据我所知
对于 OT1 编码的所有变体,没有官方认可的 PostScript 名称; 这
fontinst 名称包含空格,因此不能用作 PostScript 名称。
CHANGED IN VERSION 0.7.1
为了避免名称冲突,与 afm2pl 一起分发的 .enc- 和 .lig 文件得到了
afm2pl- 在他们的名字前面加上。 程序本身现在首先搜索因此
前置名称。 如果未找到 .enc- 或 .lig 文件,它将查找原始文件
文档名称。 afm2pl .enc 文件的重命名可能需要修改某些映射文件。
网址
afm2pl 主页是 http://tex.aanhet.net/afm2pl/.
本文 字体 安装 此 浅 方式[2](EuroTeX 2006 Proceedings,出版为
拖船[3] 问题 27.1) 说明了 afm2pl 的使用。
附注
1. 除了可以说是窄版 Courier 比全宽 Courier 更不刺耳之外,
当与正常比例字体结合使用时。 对于 Courier,选择 .833 以
匹配cmtt的宽度。 更好的是,根本不要使用 Courier; 大多数 TeX 发行版
提供各种好的替代品。
2. 字体安装浅显
http://www.tug.org/TUGboat/Articles/tb27-1/tb86kroonenberg-fonts.pdf
3. 拖船
http://www.tug.org/TUGboat/
2009 年 5 月 原子力显微镜2PL(1)
使用 onworks.net 服务在线使用 afm2pl