使用GhostScript将PDF转换为PostScript时出错,Access被拒绝无法打开命令行文件_.at

时间:2009-11-10 21:01:05

标签: pdf ghostscript postscript file-conversion

我安装了ghostscript并更新了相应的path variables ...但是,当我尝试执行此命令时出现错误:

C:\PROGRA~1\gs\gs8.64\lib>pdf2ps mydocument.pdf mydocument.ps
Access is denied.
Unable to open command line file _.at

这是正确的命令吗?我错过了一些配置或路径设置吗?否则,有没有一种理智的方法来进行这种转换?

6 个答案:

答案 0 :(得分:11)

拒绝访问建议与访问路径等有关。我建议重新检查文件夹权限(虽然我确定你已经这样做了)。此外,您可能希望尝试运行gswin32c.exe而不是pdf2ps来查看是否仍然出现错误,您可能会获得更具体的信息。

gswin32c.exe ^
  -dNOPAUSE ^ 
  -dBATCH ^
  -sDEVICE=pswrite ^
  -sOutputFile=mydocument.ps ^
   mydocument.pdf

答案 1 :(得分:8)

使用pdf2ps运行批处理文件,名为pdf2ps.batpdf2ps.cmd。您可以轻松查找并了解其“源代码”。如果这样做,您将看到它尝试将一些命令行选项写入名为_.at的临时文件中,以便克服某些Win / DOS平台上存在的DOS / cmd命令行长度的128个字符限制

由于您从安装了Ghostscript的%program%目录中调用pdf2ps,因此您似乎没有使用允许在其中编写内容的帐户。 : - )

答案 2 :(得分:5)

使用Ghostscript版本 gs9.10 时,方法 pswrite 对我不起作用,而不是尝试使用 ps2write ,它适用于我,所以命令对我有用如下:

gswin32c.exe ^
  -dNOPAUSE ^ 
  -dBATCH ^
  -sDEVICE=ps2write ^
  -sOutputFile=mydocument.ps ^
   mydocument.pdf

如果这个东西甚至不起作用,那么可以这样做: 尝试通过键入gswin32c.exe -h获取帮助,然后它将列出所有可用的设备,如下所示:

Default output device: display
Available devices:
   bbox bit bitcmyk bitrgb bj10e bj200 bjc600 bjc800 bmp16 bmp16m bmp256
   bmp32b bmpgray bmpmono bmpsep1 bmpsep8 cdeskjet cdj550 cdjcolor cdjmono
   cp50 declj250 deskjet devicen display djet500 djet500c eps9high eps9mid
   epson epsonc epswrite ibmpro ijs inkcov jetp3852 jpeg jpegcmyk jpeggray
   laserjet lbp8 lj250 ljet2p ljet3 ljet3d ljet4 ljet4d ljetplus m8510
   mswindll mswinpr2 necp6 nullpage pamcmyk32 pamcmyk4 pbm pbmraw pcx16
   pcx24b pcx256 pcxcmyk pcxgray pcxmono pdfwrite pgm pgmraw pgnm pgnmraw pj
   pjxl pjxl300 pkmraw plan planc plang plank planm plib plibc plibg plibk
   plibm png16 png16m png256 pngalpha pnggray pngmono pngmonod pnm pnmcmyk
   pnmraw ppm ppmraw **ps2write** psdcmyk psdrgb pxlcolor pxlmono r4081 spotcmyk
   st800 stcolor svg t4693d2 t4693d4 t4693d8 tek4696 tiff12nc tiff24nc
   tiff32nc tiff48nc tiff64nc tiffcrle tiffg3 tiffg32d tiffg4 tiffgray
   tifflzw tiffpack tiffscaled tiffscaled24 tiffscaled32 tiffscaled4
   tiffscaled8 tiffsep tiffsep1 txtwrite uniprint xpswrite
    Search path:
       C:\Program Files (x86)\gs\gs9.10\bin ;
       C:\Program Files (x86)\gs\gs9.10\lib ;
       C:\Program Files (x86)\gs\gs9.10\fonts ; %rom%Resource/Init/ ;
       %rom%lib/ ; c:/gs/gs9.10/Resource/Init ; c:/gs/gs9.10/lib ;
       c:/gs/gs9.10/Resource/Font ; c:/gs/fonts
    Initialization files are compiled into the executable.

正如人们只能为了方便而看到的,我已经在 ps2write 周围放置了星号(*)

答案 3 :(得分:2)

使用 gimp 打开PDF文件。

file - >出口 - >后记。

答案 4 :(得分:1)

如果要使用gs可执行文件,则必须更改权限。在命令提示符下,转到gs可执行文件所在的位置,然后使用chmod 755 gs。

答案 5 :(得分:0)

你正在做的是你不是在正确的地方写命令行首先你必须找出ghostscript的滴注exe,默认位于

  • c:\ Program Files(x86)\ gs \ gs9.20(你的鬼怪 版本)\ BIN \ gswin32c.exe

有两个exe

  • 1- gswin32.exe
  • 2- gswin32c.exe

你必须使用第二个,因为它在cmd而不是在gs cmd中执行命令 好了,你现在要做的就是编写像

这样的命令
 ...bin\gswin32c.exe -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=mydocument.ps   mydocument.pdf

请注意正确检查文件路径还有一件事 文件路径就好 “d:\ htmltopdf \ document.ps” 应写成 “d:/htmltopdf/document.ps” 是的,只在文件路径中用foreword斜杠替换反斜杠 并且命令行也区分大小写,所以要小心案例