Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Fonts 如何将外部字体添加到ghostscript?_Fonts_Ghostscript_Postscript - Fatal编程技术网

Fonts 如何将外部字体添加到ghostscript?

Fonts 如何将外部字体添加到ghostscript?,fonts,ghostscript,postscript,Fonts,Ghostscript,Postscript,我有一个文件夹(在我的linux机器中),其中包含一些字体文件(*.ttf字体)。我正在尝试将这些字体添加到ghostscript中,同时运行gs命令将postscript转换为pdf。在运行gs命令时添加字体的选项是什么?请告诉我-I,-sFontResourceDir,-sFONTPATH的工作原理 我正在尝试下面的命令,但我无法观察到任何东西 gs-dSAFER-dBATCH-sDEVICE=pdfwrite-sNOPAUSE-dQUITE-sOutputFile=/home/prasad

我有一个文件夹(在我的linux机器中),其中包含一些字体文件(*.ttf字体)。我正在尝试将这些字体添加到ghostscript中,同时运行gs命令将postscript转换为pdf。在运行gs命令时添加字体的选项是什么?请告诉我-I,-sFontResourceDir,-sFONTPATH的工作原理

我正在尝试下面的命令,但我无法观察到任何东西

gs-dSAFER-dBATCH-sDEVICE=pdfwrite-sNOPAUSE-dQUITE-sOutputFile=/home/prasad/Desktop/Virtual\u pdf.pdf/home/prasad/Desktop/VirtualPrinter\u 06\u 01\u 2017\u 14\u 00\u 54\u 670.ps


提前感谢。

首先,您需要知道PostScript不支持TrueType字体(是的,它支持Type42字体,这两种字体并不完全相同)

因此,添加TrueType字体作为缺失字体的替代品(我想这就是为什么您要这样做)并不能保证有效。问题在于猜测字符代码到glyph ID的映射

如果你想在运行Ghostscript时添加一种字体,那么你需要编写一个PostScript程序来完成,这超出了这里的回答范围。所以我假设你真的想在Ghostscript维护的字体/替代品列表中添加一种字体,有两个地方

首先,字体位于fontmap.GS文件中,您可以在Linux系统上的..../GS/Resource/Init中找到该文件。显然,您必须自己找到Ghostscript安装文件夹,它通常位于/usr下

其次,同一位置的cidfmap文件列出了CIDFonts和替代品

这两个文件中条目的格式都记录在文件的注释中

-I开关记录在Ghostscript文档中,在use.htm中,或

FontResourceDir记录在同一文件中的“资源相关参数”下

-sFONTPATH再次记录在同一个文件中,在该文件中对所有这些参数如何交互有一个相当长的解释

请注意,
-dQUITE
不会做任何事情,这不是一个有效的参数,我怀疑您的意思是
-dQUIET
,我不会在尝试亲自调试问题时设置它。另外,
-sNOPAUSE
不会做任何事情,因为那应该是
-dNOPAUSE