2015-11-07 52 views
1

我正在尝试使用Magick.NET调整gif大小。 这个gif有80帧,并用下面的代码调整它的大小,使得第一帧之后的每一帧都非常模糊,只有第一帧的一半以上的文件大小。质量从第二帧GIF调整大小Magick.NET

第一&第二帧+之间的一切变化的唯一的事情之后是:

ColorType : TrueColor to TrueColorAlpha 
BoundingBox.X : 1 to 2 
BoundingBox.Y : 0 to 1 
FileSize : 15525 to 9923 
HasAlpha : false to true 

这是我现在使用的代码:

 using (MagickImageCollection collection = new MagickImageCollection(filepath)) 
     { 
      collection.Coalesce(); 
      int i = 0; 

      foreach (MagickImage image in collection) 
      { 
       image.Resize(newWidth, newHeight); 
       image.Write("CompressorTemp\\" + i + ".jpg"); 
       i++; 
      } 

      // Save the result 
      collection.Write(filepath); 
     } 

我只有这发生在这个gif上,但我会处理它们的大量数据,并且需要知道这是否会成为问题。

回答

1

我怀疑你正在运行一个OpenCL的bug,它将在下一个版本的Magick.NET(7.0.0.0022)中修复。解决方法是禁用OpenCL:

MagickNET.UseOpenCL = false;