后记:如何在显示之前将字符串切割一定宽度?

标签 postscript eps

我需要打印一个字符串直到一定的宽度,例如:

(abcd efgh) 显示 我只需要打印字符串的 36 个点,在本例中我只想打印 abcd 和半个 e。 我怎样才能做到这一点? 或者至少只打印到 e 或 e 之前?

最佳答案

如果您想要部分“e”,请使用 Ken 的建议并使用剪辑。

要完全排除“e”,您可以使用stringwidth。此循环将字符串的长度减少 1,直到小于指定的最大值。

/Times-Roman 14 selectfont

(abcd efgh) 36 {
    1 index stringwidth pop % s max len 
    2 copy ge {
        pop pop exit
    }{  
        pop  % s max 
        exch % max s
        0 1 index length 1 sub getinterval % max s[0:n-2]
        exch % s' max
    } ifelse
} loop

==

输出:

(abcd )

关于后记:如何在显示之前将字符串切割一定宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30237639/

相关文章:

operating-system - OSError : Unable to locate Ghostscript on paths

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

pdf - 如何在不损失质量的情况下从(Linux)命令行注释 PS 或 PDF?

gnuplot - gnuplot中的加号/减号?

r - 使用 R 将图形导出到 .eps 文件

pdf - 使用 Ghostscript 将 PDF 转换为 EPS 轮廓时如何保持边距?

postscript - 如何在 Ghostscript 中将向量打印到标准输出

linux - 如何在 linux 中的 postscript 或 pdf 文件的每一页底部添加页脚?

Java 将 PostScript 转换为任何图像格式

当打印为 .eps 时,Matlab 提供光栅化图形而不是矢量图形