0
我基本上試圖使用WP7中的ImageTools庫將GIF圖像轉換爲PNG圖像。OutOfMemoryException在WP7中爲BitmapImage調用SetSource時
byte[] gifBytes = // GIF image bytes from the web
ImageTools.IO.Decoders.AddDecoder<GifDecoder>();
ImageTools.IO.Encoders.AddEncoder<PngEncoder>();
ImageTools.IO.Png.PngEncoder enc = new PngEncoder();
ExtendedImage gifImage = new ExtendedImage();
gifImage.SetSource(new MemoryStream(gifBytes));
MemoryStream pngBytes = new MemoryStream();
enc.Encode(gifImage, pngBytes);
BitmapImage pngImage = new BitmapImage();
pngImage.SetSource(pngBytes);
當我打電話pngImage.SetSource(pngBytes)
我得到OutOfMemoryException
。
也許還有別的東西我不在這裏grock,因爲調試器還顯示gifImage是0x0我調用gifImage.SetSource(new MemoryStream(gifBytes))
後。爲什麼它的價值,我已檢查,gifBytes[]
包含有效的GIF字節...
任何想法我做錯了什麼?
您正在使用的圖像的尺寸是多少? – 2012-04-03 13:35:16
我不會提前知道。我基本上擁有一套我知道是GIF圖像的字節。出於好奇,在這種情況下需要哪些信息?我是否需要知道爲了創建ExtendedImage(即GIF)? – 2012-04-03 13:37:20
哦 - 但對於我現在有這種特殊情況,圖像是600px×205px。 – 2012-04-03 13:38:32