Re: Сброс битмапов.
От: saprxm СССР  
Дата: 13.11.13 12:37
Оценка:
N>Иногда бывает нужно в коде в целях отладки сбрасывать какие то изображения что бы посмотреть.

у меня на C# такое было нужно
делюсь:

        public static byte[] ImageToBytes(Image image, ImageFormat format)
        {
            // так исправляется коварный баг в фреймворке на 64 платформах: 
            // http://stackoverflow.com/questions/10586538/net-image-save-method-produces-non-reproducible-results-on-windows-64-bit
            // http://stackoverflow.com/questions/9021720/system-drawing-image-save-producing-inconsistent-file-sizes
            using( var tmpImage = new Bitmap(image) )
            using( var memoryStream = new MemoryStream() )
            {
                //image.Save( memoryStream, format );
                tmpImage.Save( memoryStream, format );

                return memoryStream.ToArray();
            }

            //byte[] imageData;
            //using( var fs = new FileStream( tilePath, FileMode.Open, FileAccess.Read ) )
            //{
            //    imageData = new byte[fs.Length];
            //    fs.Read( imageData, 0, Convert.ToInt32( fs.Length ) );
            //    fs.Close();
            //}
        }

        public static Image BytesToImage( byte[] bytes )
        {
            using( var ms = new MemoryStream(bytes) )
            {
                ms.Seek(0, SeekOrigin.Begin);

                return Image.FromStream(ms);
            }
        }
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.