Imagemagick FailedToExecuteCommand `"gswin32c.exe"
Imagemagick FailedToExecuteCommand `"gswin32c.exe"
我正在测试服务器上测试我的文件转换,但出现以下错误。我在本地测试了这个案例,它没有问题。在服务器上它给我带来了一些麻烦。
FailedToExecuteCommand `"gswin32c.exe" -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 "-sDEVICE=pngalpha" -dTextAlphaBits=4 -dGraphicsAlphaBits=4 "-r72x72" -g350x350 -dEPSCrop "-sOutputFile=C:/Windows/TEMP/magick-1520z9_ZtBD3O2dg%d" "-fC:/Windows/TEMP/magick-15203XcyD8hja0LJ" "-fC:/Windows/TEMP/magick-1520fnhOiV0JVLNJ"' (Le fichier spécifié est introuvable.) @ error/delegate.c/ExternalDelegateCommand/475.convert:
任何 help/tips 将不胜感激。
编辑 2:
我还找到了 link,其中 imagemagick 管理员建议更改 delegates.xml 中的 gs 路径。这个解决方案看起来很有希望,但是委托文件有一个 eps 到 ps 转换的条目,如下所示:
<delegate decode="eps" encode="ps" mode="bi" command=""@PSDelegate@" -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 -sDEVICE=ps2write "-sOutputFile=%o" -- "%i""/>
而且我似乎找不到 imagemagick 是如何引用 GS 位置的。我将 gs 添加到路径变量 and/or 修改了 delegates.xml 的位置以修复此问题。
编辑 3:
我在 imagemagick convert 命令中遇到错误 "no images defined",如下所示。我是否需要为 gs 设置一些权限,因为我没有在 Temp 中找到临时文件夹 directory.These 似乎在我的本地神奇地工作,但在测试服务器上犹豫不决。
convert: Postscript delegate failed [ghostscript library 9.22] -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 "-sDEVICE=pngalpha" -dTextAlphaBits=4 -dGraphicsAlphaBits=4 "-r72x72" -g350x350 -dEPSCrop "-sOutputFile=C:/Windows/TEMP/magick-110207SjtG6NIBllO%d" "-fC:/Windows/TEMP/magick-1102057mSI5SPZ919" "-fC:/Windows/TEMP/magick-11020HeIOX7qThedE" -c showpage: (null)' @ error/ps.c/ReadPSImage/884.convert: no images defined
D:\inetpub\IndependenceAWS\Conversion_DEV_DCHI190208-121606-797-QSAX2N0OVB\JPG\icam_logo_ToJPG.JPG' @ error/convert.c/ConvertImageCommand/3300
对于第一个问题,
FailedToExecuteCommand `"gswin32c.exe"
在系统变量上配置ghostscript bin文件夹的路径and/or配置delegates.xml可以在文件夹路径C:\Program Files\ImageMagick-7.0.8-Q16
修改委托如下:
delegate decode="eps" encode="ps" mode="bi" command=""C:\Program
Files\gs\gs9.26\bin\gswin64.exe@" -q -dQUIET -dSAFER -dBATCH
-dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 -sDEVICE=ps2write "-sOutputFile=%o" -- "%i""
对于第二个Imagemagick无法访问C盘Temp文件夹的问题
如下添加或取消注释临时文件路径的策略
policy domain="resource" name="temporary-path"
value="D:/inetpub/IndependenceAWS/Conversion-Temp"/
与下面相同的 xml 中的另一个编辑解决了问题并允许 imagemagick 使用新文件夹进行临时转换
policy domain="module" rights="read|write" pattern="{PS,PDF,XPS}"
非常感谢所有对我的问题发表评论并帮助我解决这些问题的人。
您需要安装ghostscript。
您可以下载它 here 并安装它,错误就会消失。
例如,下载64bit version,然后双击并按照安装说明进行安装。然后重新运行您的 magick
命令,FailedToExecuteCommand "gswin32c.exe"
错误将消失。
注意:如评论所述:GS 9.26 has some bugs -- try downgrading to 9.23, 9.24 or 9.25. 3
,使用9.27既不报错也不输出,改成9.24后一切正常
如果有人在使用 MSYS2 版本的 ImageMagick 时遇到此问题,您需要通过 MSYS2 安装 GhostScript:运行 以下之一:
- 在 MSYS2 MinGW 64 位上:
pacman -S mingw-w64-x86_64-ghostscript
- 在 MSYS2 MinGW 32 位上:
pacman -S mingw-w64-i686-ghostscript
我知道这是一个旧话题,但我想补充一下我的经验,因为它可能会对某人有所帮助。
我遇到了和你一样的错误,但对我来说问题是内存不足。
这是 运行 在分配的 RAM 不多的 VM 上,升级到 4GB 后一切正常。
已将 gs 更改为完整路径。
问题来了....
我正在测试服务器上测试我的文件转换,但出现以下错误。我在本地测试了这个案例,它没有问题。在服务器上它给我带来了一些麻烦。
FailedToExecuteCommand `"gswin32c.exe" -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 "-sDEVICE=pngalpha" -dTextAlphaBits=4 -dGraphicsAlphaBits=4 "-r72x72" -g350x350 -dEPSCrop "-sOutputFile=C:/Windows/TEMP/magick-1520z9_ZtBD3O2dg%d" "-fC:/Windows/TEMP/magick-15203XcyD8hja0LJ" "-fC:/Windows/TEMP/magick-1520fnhOiV0JVLNJ"' (Le fichier spécifié est introuvable.) @ error/delegate.c/ExternalDelegateCommand/475.convert:
任何 help/tips 将不胜感激。
编辑 2:
我还找到了 link,其中 imagemagick 管理员建议更改 delegates.xml 中的 gs 路径。这个解决方案看起来很有希望,但是委托文件有一个 eps 到 ps 转换的条目,如下所示:
<delegate decode="eps" encode="ps" mode="bi" command=""@PSDelegate@" -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 -sDEVICE=ps2write "-sOutputFile=%o" -- "%i""/>
而且我似乎找不到 imagemagick 是如何引用 GS 位置的。我将 gs 添加到路径变量 and/or 修改了 delegates.xml 的位置以修复此问题。
编辑 3:
我在 imagemagick convert 命令中遇到错误 "no images defined",如下所示。我是否需要为 gs 设置一些权限,因为我没有在 Temp 中找到临时文件夹 directory.These 似乎在我的本地神奇地工作,但在测试服务器上犹豫不决。
convert: Postscript delegate failed
[ghostscript library 9.22] -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 "-sDEVICE=pngalpha" -dTextAlphaBits=4 -dGraphicsAlphaBits=4 "-r72x72" -g350x350 -dEPSCrop "-sOutputFile=C:/Windows/TEMP/magick-110207SjtG6NIBllO%d" "-fC:/Windows/TEMP/magick-1102057mSI5SPZ919" "-fC:/Windows/TEMP/magick-11020HeIOX7qThedE" -c showpage: (null)' @ error/ps.c/ReadPSImage/884.convert: no images defined
D:\inetpub\IndependenceAWS\Conversion_DEV_DCHI190208-121606-797-QSAX2N0OVB\JPG\icam_logo_ToJPG.JPG' @ error/convert.c/ConvertImageCommand/3300
对于第一个问题,
FailedToExecuteCommand `"gswin32c.exe"
在系统变量上配置ghostscript bin文件夹的路径and/or配置delegates.xml可以在文件夹路径C:\Program Files\ImageMagick-7.0.8-Q16
修改委托如下:
delegate decode="eps" encode="ps" mode="bi" command=""C:\Program Files\gs\gs9.26\bin\gswin64.exe@" -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 -sDEVICE=ps2write "-sOutputFile=%o" -- "%i""
对于第二个Imagemagick无法访问C盘Temp文件夹的问题
如下添加或取消注释临时文件路径的策略
policy domain="resource" name="temporary-path" value="D:/inetpub/IndependenceAWS/Conversion-Temp"/
与下面相同的 xml 中的另一个编辑解决了问题并允许 imagemagick 使用新文件夹进行临时转换
policy domain="module" rights="read|write" pattern="{PS,PDF,XPS}"
非常感谢所有对我的问题发表评论并帮助我解决这些问题的人。
您需要安装ghostscript。
您可以下载它 here 并安装它,错误就会消失。
例如,下载64bit version,然后双击并按照安装说明进行安装。然后重新运行您的 magick
命令,FailedToExecuteCommand "gswin32c.exe"
错误将消失。
注意:如评论所述:GS 9.26 has some bugs -- try downgrading to 9.23, 9.24 or 9.25. 3
,使用9.27既不报错也不输出,改成9.24后一切正常
如果有人在使用 MSYS2 版本的 ImageMagick 时遇到此问题,您需要通过 MSYS2 安装 GhostScript:运行 以下之一:
- 在 MSYS2 MinGW 64 位上:
pacman -S mingw-w64-x86_64-ghostscript
- 在 MSYS2 MinGW 32 位上:
pacman -S mingw-w64-i686-ghostscript
我知道这是一个旧话题,但我想补充一下我的经验,因为它可能会对某人有所帮助。
我遇到了和你一样的错误,但对我来说问题是内存不足。 这是 运行 在分配的 RAM 不多的 VM 上,升级到 4GB 后一切正常。
已将 gs 更改为完整路径。 问题来了....