我在Windows XP上。如何让ImageMagick与Ghostscript对话
我正在使用ImageMagick(MagickNet)将PDF转换为TIF。
我的问题是,当我在MagicNet.Image对象中加载PDF时,它不会引发错误,但是当我查看属性时,很明显它没有加载PDF(它不会加载PDF) t包含任何数据)。
我的猜测是ImageMagick不会与Ghostscript对话。
任何想法?
- 我忘了提,我没有安装幽灵脚本,和我说的bin文件夹到PATH
我在Windows XP上。如何让ImageMagick与Ghostscript对话
我正在使用ImageMagick(MagickNet)将PDF转换为TIF。
我的问题是,当我在MagicNet.Image对象中加载PDF时,它不会引发错误,但是当我查看属性时,很明显它没有加载PDF(它不会加载PDF) t包含任何数据)。
我的猜测是ImageMagick不会与Ghostscript对话。
任何想法?
- 我忘了提,我没有安装幽灵脚本,和我说的bin文件夹到PATH
你确定要安装Ghostscript? ImageMagick软件包默认不包含它。
也许你已经做了这样的事情,但为了确保你已经将问题隔离到ImageMagick和GhostScript(而不是MagickNet,它只是一个包装),你可以看看ImageMagick的command- line convert.exe能将您的PDF转换为TIFF?我从来没有见过convert.exe无法做一些可以通过基于API的方法完成的事情(我没有使用MagickNet,但我已经广泛使用了convert.exe实用程序,并且通过interop使用了ImageMagickObject COM DLL )。对于一个简单的测试,它应该是这么简单:
c:\PATH_TO_IMAGEMAGICK\convert YourInput.pdf YourOutput.tif
如果这样的作品,你ImageMagick的和Ghostscript设施基本上是确定,需要MagickNet或您的应用程序做的东西;如果它不起作用,ImageMagick和/或GhostScript安装/配置有问题。
如果事实证明MagickNet是问题,那么使用ImageMagickObject通过interop转换并不算太坏。您只需创建一个实例,然后调用“convert”就好像它是一个静态方法,参数与命令行convert.exe几乎相同:
ImageMagickObject.MagickImage img = new MagickImage();
object[] parms = new object[2];
parms[0] = "YourInput.pdf";
parms[1] = "YourOuput.tif";
img.Convert(ref parms);
ImageMagickObject.MagickImage img = new MagickImage();
object[] parms = new object[2];
parms[0] = "YourInput.pdf";
parms[1] = "YourOuput.tif";
img.Convert(ref parms);