【问题标题】:Magick.NET-Q8 7.2 breaks and I can not catch the errorMagick.NET-Q8 7.2 中断,我无法捕捉到错误
【发布时间】:2018-06-08 04:49:39
【问题描述】:

我正在使用 Magick.NET-Q8 AnyCPU 7.2、Visual Studio 2017、Windows 10 这是我的代码:

using (MagickImage image = new MagickImage(imagedata))
{
    image.Quality = 60;
    image.Format = MagickFormat.Jpg;
    image.Composite(new MagickImage(watermarkFullPath), CompositeOperator.Over);

    //Save Big Image , This line works properly
    image.Write("somewhere\\myimage.jpg");

    //Save Smaller
    image.Resize(width, height);

    try
    {
        //this line breaks and nothing is done
        //program jumps over the whole function
        image.Write("somewhere\\mysmallimage.jpg");
    }
    catch
    {
        //the error never reaches here
    }
}

为什么程序在没有错误跟踪的情况下中断? 我还注意到升级开发 Windows 后出现此错误 从 8.1 到 10

有什么想法吗?

【问题讨论】:

    标签: c# imagemagick imagemagick.net


    【解决方案1】:

    新版本的 Magick.NET-Q8 AnyCPU(7.0 或更高版本)似乎可以使用 GPU 来处理调整大小的图像,因此您可以通过以下代码强制 Magick.NET 仅使用 CPU:

    ImageMagick.OpenCL.IsEnabled = false;
    

    将这行代码放在 resizinig 命令之前,然后 Resize 会像以前一样工作。

    【讨论】:

      猜你喜欢
      • 2015-07-21
      • 2018-04-13
      • 2016-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-05
      • 2015-01-24
      • 1970-01-01
      相关资源
      最近更新 更多