Pregunta

necesito para generar imágenes en miniatura y de tamaño medio de fotografías de gran tamaño. Estas fotos son pequeños para su exhibición en una galería en línea. Muchos de los fotógrafos están presentando imágenes JPEG utilizando Adobe RGB. Me gustaría utilizar sRGB para todas las miniaturas y las imágenes de tamaño medio

Estoy utilizando dotnet (asp.net) y necesita una manera de convertir de Adobe RGB a sRGB sin perder calidad.

¿Fue útil?

Solución

Información de Antecedentes: JPG tienen 8 bits de RGB de color rojo, verde y azul, ya sea sRGB, Adobe RGB, o ol llano'. El descriptor de ICC determina el espacio de color. A veces esto se incrusta en el archivo jpg. A veces hay una bandera para designar sRGB, Exif Colorspace etiqueta a001 = 1. No hay bandera estándar para Adobe RGB, pero algunas aplicaciones y cámaras de uso 65535 (sin calibrar) para Adobe RGB en la etiqueta Exif A001.

Para convertir un archivo jpg a partir de un perfil ICC (espacio de color) a otro, se puede utilizar para crear un CreateColorTransform transorm entre los espacios de color. Usted tendrá que proporcionar el perfil ICC para la fuente (Adobe RGB) y espacios de color de destino (sRGB).

Después de tener el transformar, utilizar TranslateBitmapBits para ajustar los píxeles. Puede que sea más fácil trabajar con la imagen como un DIBSection.

Esto puede ser un poco complejo para escribir en .asp, por lo que podría ser más fácil de usar una biblioteca de gráficos que hace esto.

Otros consejos

Tome un vistazo a ColorConvertedBitmap clase .

Se debe utilizar la ImageMagic -profile opción, creo que -colorspace opción no le ayudará allí.

convert image.jpg -profile sRGB.icc rgb_image.jpg

También puede buscar poco de gestión del color del motor

Tener un vistazo a El mapa de bits transformar clases que tiene una pequeña muestra de la utilización de la clase ColorconvertedBitmap con un perfil.

En el lado del servidor que se podría llamar a ImageMagick y deja que haga la conversión para usted.

Aquí hay un enlace a la opción de línea de comandos -colorspace

No he utilizado esta opción en particular, pero parece hacer lo que quiera.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top