¿Cómo puedo convertir un BITMAP en formato de matriz de bytes al formato JPEG utilizando .net 2.0?C#: ¿Cómo convertir la matriz de bytes BITMAP al formato JPEG?
Respuesta
¿Qué tipo de byte[]
quieres decir? ¿Los datos de flujo de archivos sin formato? En cuyo caso, ¿qué tal algo así como (usando System.Drawing.dll
en una aplicación cliente):
using(Image img = Image.FromFile("foo.bmp"))
{
img.Save("foo.jpg", ImageFormat.Jpeg);
}
O utilice FromStream
con un new MemoryStream(arr)
si realmente tienen un byte[]
:
byte[] raw = ...todo // File.ReadAllBytes("foo.bmp");
using(Image img = Image.FromStream(new MemoryStream(raw)))
{
img.Save("foo.jpg", ImageFormat.Jpeg);
}
si es sólo una el búfer de datos de píxeles en bruto, y no un archivo de imagen completo (incluidos encabezados, etc., como un JPEG), entonces no puede usar Image.FromStream.
Creo que lo que usted podría estar buscando es System.Drawing.Bitmap.LockBits, devolviendo un System.Drawing.Imaging.ImageData; esto proporciona acceso a leer y escribir los píxeles de la imagen usando un puntero a la memoria.
public static Bitmap BytesToBitmap(byte[] byteArray)
{
using (MemoryStream ms = new MemoryStream(byteArray))
{
Bitmap img = (Bitmap)Image.FromStream(ms);
return img;
}
}
esto es un mapa de bits. él quiere un jpeg. – AnthonyBlake
Correcto, el código no está completo. Pero devuelve un mapa de bits, que luego puede guardar en un archivo en cualquier formato ... Supongo que esta es mi bienvenida a las Reputation Wars ... Mi culpa de todos modos. –
@ juanjo.arana pero no ha dado una respuesta a su pregunta, solo le dijo cómo obtener un mapa de bits. – gbjbaanb
- 1. Cómo convertir una matriz de bytes a Bitmap
- 2. Buscar formato de imagen utilizando el objeto Bitmap en C#
- 3. Android: ¿cómo convertir el conjunto de bytes a Bitmap?
- 4. Android ¿La mejor manera de convertir una matriz de bytes a Bitmap?
- 5. Cómo convertir una matriz de bytes al adjunto de correo
- 6. Convertir matriz de bytes a matriz corta en C#
- 7. ¿Cómo trunco una cadena al convertir a bytes en C#?
- 8. ¿Cómo convertir una matriz de bytes en doble en C?
- 9. Convertir matriz de bytes de formato de audio wav al punto flotante
- 10. Convertir matriz de int a Bitmap en Android
- 11. ¿Cómo convertir una matriz de bytes a una matriz int?
- 12. Cómo convertir imágenes en matriz de bytes
- 13. Error al convertir una matriz de bytes a una matriz int en C#
- 14. Convertir una imagen JPEG a una matriz de bytes - Excepción COM
- 15. Cómo convertir eficientemente la matriz de bytes a la cadena
- 16. Convertir PNG a JPEG
- 17. Cómo convertir una matriz de bytes hash C# a una cadena para pasarla a la API?
- 18. Convertir una matriz de bytes a una clase que contiene una matriz de bytes en C#
- 19. Convertir binario en escala de grises sin formato a JPEG
- 20. C#: Convertir matriz de bytes en un flotador
- 21. Cómo convertir una matriz de bytes en una matriz int?
- 22. Convertir matriz de bytes a archivo wav
- 23. ¿Convertir int a una matriz de bytes en C?
- 24. Convertir objeto a matriz de bytes en C#
- 25. Cómo convertir una matriz de bytes a blob
- 26. Problemas al convertir una matriz de bytes a una cadena y volver a la matriz de bytes
- 27. cómo convertir una matriz de bytes a Stream
- 28. Convertir bitmap a PNG en la memoria en C++ (win32)
- 29. Convertir matriz de bytes en Bitset
- 30. Convertir una matriz de cadenas a matriz de bytes
El segundo fue justo lo que estaba buscando. Sin embargo, estoy escribiendo en otro MemoryStream en lugar de hacerlo en un archivo. Gracias! – Marc