我正在尝试生成一个用于从Ghostscript程序打印地图的文件。它从具有1320个经度和纬度坐标的输入文件中读取数据,每行一个,如此
-92.32 48.24
-88.13 48.92
-83.11 46.27
-81.66 44.76
-82.09 42.29
使用以下代码打开并阅读文件:
/ ifile(/home/Harry/Mercator/world.dat)(r)file def
ifile的readline
使用gs Arc17.ps
运行程序可以获得我想要的输出,没有问题
然而,当我尝试使用以下内容获取图像文件时
gs -dSAFER -dBATCH -dNOPAUSE -sPAPERSIZE=a4 -sDEVICE=png16mdGraphicsAlphaBits=4 -sOutputFile=Arc17.png Arc17.ps
(从https://ghostscript.com/doc/current/Devices.htm#Measurements
复制的命令,第3.1节“PNG文件格式”我收到此错误
Error: /invalidfileaccess in --file--
Operand stack:
ifile (/home/Harry/Mercator/world.dat) (r)
请任何人解释一下并告诉我该怎么做?我很乐意提供更多详细信息,不确定此时还包括哪些内容。
答案 0 :(得分:1)
您正在使用-dSAFER,出于安全原因,它专门限制任意文件访问。当-dSAFER为true时,您可能无法从文件系统中的任意位置打开/读取/写入。
如果你想这样做,请设置-dNOSAFER(或者不要设置SAFER)。
invalidfileaccess错误的含义与其说的完全相同,尝试访问文件,并且该访问是非法的。
该命令行中的各种开关在您引用的相同文档中进行了解释,主要在“Use.htm”文件中。