代码之家  ›  专栏  ›  技术社区  ›  Joel Martinez

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

  •  7
  • Joel Martinez  · 技术社区  · 15 年前

    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 回复  |  直到 7 年前
        1
  •  11
  •   Rahul Gupta Jerod Venema    7 年前

    gswin32c.exe 而不是 pdf2ps

    gswin32c.exe ^
      -dNOPAUSE ^ 
      -dBATCH ^
      -sDEVICE=pswrite ^
      -sOutputFile=mydocument.ps ^
       mydocument.pdf
    
        2
  •  8
  •   Kurt Pfeifle    15 年前

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

    pdf2ps 从安装Ghostscript的%programs%目录中,您似乎没有使用允许在其中写入内容的帐户。:-)

        3
  •  5
  •   Rahul Gupta Jerod Venema    11 年前

    gs9.10 没有为我工作,而是我尝试使用 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.
    

    正如人们所看到的,只是为了方便起见,我把星号(*)放在

        4
  •  2
  •   kangear    11 年前

    笨蛋 打开PDF文件。

    文件->出口->后记

        5
  •  1
  •   Ankit Jain    12 年前

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

        6
  •  0
  •   Praveen_Kumar    8 年前

    您正在做的是,您没有在正确的位置编写命令行。首先,您必须找到ghostscript的Institution exe,默认情况下,它位于

    • 版本)\bin\gswin32c.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” 应该写为 是,仅在文件路径中将反斜杠替换为前言斜杠 而且命令行也是区分大小写的,所以要小心处理大小写