fonts - 更改 PostScript 中的字母间距

标签 fonts postscript eps

在编写 postscript 文件时,可以选择如下字体:

/Courier-Bold findfont 16 scalefont setfont
(bar baz) show

我想更改字体的字母间距 - 有办法做到这一点吗?要么直接作为字体操作符,要么只是能够在字形渲染之间插入任意后记命令?

最佳答案

是的,show 有多种变体运算符可用于类似这样的事情:

  • ax ay 字符串   ashow   -
    添加 (ax, ay) 到每个字符的宽度,同时显示字符串

    <
  • cx cy 字符串   widthshow   -
    添加 (cx, cy) 到 char 的宽度,同时显示字符串

  • cx cy 字符 ax ay 字符串   awidthshow   -
    结合ashow和widthshow的效果

  • proc 字符串 kshow -
    字符串中显示的字符之间执行proc

一些提示。由于 postscript 没有字 rune 字,因此常见的习惯用法是从 1 字节字符串文字中提取整数值,以提供 widthshowchar 参数。和awidthshow 。例如。

( ) 0 get %the space char, aka 32 or 16#20

除非您想要某种阶梯效果,否则所有 y 值都应该为 0。

kshow 在每个字符之间执行的过程按顺序接收刚刚显示的字符和即将显示的字符作为参数。这大概是为了让您可以在某种“字距调整表”中查找该对。但我从未真正见过这样做。但如果不需要(通常),请记住将其弹出。


关于制作衍生字体,我推荐你引用this answer of mine在 codegolf.SE 上,它通过在 Times-Roman 周围画框来创建填字游戏字体。字符的宽度是使用/BuildChar 过程中的 setcachedevice 运算符声明的。对于我的,我只需要一个恒定的宽度,因此我使用 1 将其直接与字体大小联系起来。

关于fonts - 更改 PostScript 中的字母间距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10013481/

相关文章:

r - pdf 设备和字体系列 "Arial"/或 : Change font name (not font) in PDF

css - 如何在 Bootstrap 中修改字体系列

html - 谷歌字体@import + @font-face?

matlab - 如何在 Matlab 图形中使用非 ASCII 字符(用于 LaTeX 文档)?

python - 使用 python 的 win32print 模块打印 PDF 文档?

ios - 显示EPS图像

flash - 设置动态文本字段时,链接的 SWC/源中的 AS3 嵌入字体空白

postscript - 在后记中,如何从当前事件的字体中获取下划线位置(UnderlinePosition),它是一个整数?

pdf - 优化 Mathematica 生成的 eps/pdf 文件的大小

imagemagick - 按比例缩小大的 EPS 图片,没有尖锐的结果和剪切路径