Syscoop

Páginas: 2 (303 palabras) Publicado: 28 de febrero de 2013
Código C#
Tips y Trucos
Conversión de imagen a byte y viceversa en C#
El siguiente código convierte una imagen en byte
usingSystem.IO;
usingSystem.Drawing;
usingSystem.Net;usingSystem.Drawing.Imaging;

System.Drawing.Image img = new Bitmap(@"C:\image.jpg");
byte[] ByteImage = ConvertImageToByteArray(img, ImageFormat.Jpeg);

//Esta es la función que realiza la conversiónpublic static byte[] ConvertImageToByteArray
(System.Drawing.Image _image, ImageFormat _formatImage)
{
byte[] ImageByte;

try
{
using (MemoryStream ms = new MemoryStream())
{
_image.Save(ms,_formatImage);
ImageByte = ms.ToArray();
}
}
catch (Exception) { throw; }
return ImageByte;
}
Si se requiere hacer la conversión de Byte a imagen se realiza lo siguiente:
//Aquí obtenemos laimagen y la convertimos en byte

System.Drawing.Image img = new Bitmap(@"C:\image.jpg");
byte[] myByteImage = ConvertImageToByteArray(img, ImageFormat.Jpeg);

//Aqui se realiza la conversión de byte aimagen y se guarda en otra ubicación con otro nombre

System.Drawing.Image newImage;

using (MemoryStream ms = new MemoryStream(myByteImage, 0, myByteImage.Length))
{

ms.Write(myByteImage, 0,myByteImage.Length);
newImage = System.Drawing.Image.FromStream(ms, true);

//Aquí ya podemos manipular la imagen como queramos, en el ejemplo obtengo sus dimensiones y la guardo en otra carpetasi se cumple una condición

string dimension = newImage.Width + " X " + newImage.Height;

if (!dimension.Equals("120 X 60"))
{
newImage.Save(@"C:\otherDirectory\myImage.jpg", ImageFormat.Jpeg);}

}
Otro caso sería obtener una imagen mediante una URL y convertirla a byte, eso se lograría con la función que pongo a continuación :
public static byte[] downloadDataToByteArray(string url){
byte[] downloadedData = new byte[0];

try
{
WebRequest req = WebRequest.Create(url);
WebResponse response = req.GetResponse();
Stream stream = response.GetResponseStream();

byte[]...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS