2015-11-07 83 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;