尝试读取上传的.eps文件时,Magick .NET MagickDelegateErrorException

时间:2014-04-28 03:52:40

标签: .net delegates imagemagick postscript eps

尝试执行此操作时,我收到了MagickDelegateErrorException:

 public static Image LoadEps(HttpPostedFileBase file)
 {
      MagickReadSettings settings = new MagickReadSettings();
      settings.ColorSpace = ColorSpace.RGB;
      settings.Density = new MagickGeometry(300, 300);

      using (MagickImage image = new MagickImage())
      {
          image.AddProfile(ColorProfile.SRGB);
          image.Read(file.InputStream, settings);
          return (Image)image.ToBitmap();
      }
 }

异常消息很神秘:

  

Magick:Postscript委托失败了`C:/ some / directory / AppData / Local / Temp / magick-14256CekyegnNSk1p':没有这样的文件或目录@ error / ps.c / ReadPSImage / 840

我已经在谷歌上做了一些谷歌搜索,有几个提到GhostScript,但正如我通过Magick文档所理解的,这应该没有Visual C ++库以外的依赖。

感谢您的帮助

1 个答案:

答案 0 :(得分:2)

如果要使用Magick.NET转换EPS文件,则需要安装Ghostscript。您可以从此处下载安装文件:http://www.ghostscript.com/download/gsdnld.html。确保使用相同的平台安装GhostScript版本。如果您使用64位版本的Magick.NET,您还应该安装64位版本的Ghostscript。您可以将32位版本与64版本一起使用,但如果保持平台不变,您将获得更好的性能。

documentation已被更改以更好地解释这一点。