freeimage.h

FreeImage_GetColorType

DLL_API FREE_IMAGE_COLOR_TYPE DLL_CALLCONV FreeImage_GetColorType(FIBITMAP *dib);

Investiga el tipo de color de un mapa de bits leyendo los bits de un pixel del mapa de bits y analizándolo. FreeImage_GetColorType puede retornar uno de los siguientes valores:

ValorDescripción
FIC_MINISBLACK Mapa de bits monocromo (1-bit) : la primera entrada en la paleta es negro. Mapas de bits con paleta (4 o 8-bit) y mapas de bits no estándar de canal sencillo: el mapa de bits tiene una paleta de escala de grises.
FIC_MINISWHITE Mapa de bits monocromo (1-bit) : la primera entrada en la paleta es blanco. Mapas de bits con paleta (4 o 8-bit) : el mapa de bits tiene una paleta de escala de grises invertida.
FIC_PALETTE Mapa de bits con paleta (1, 4 o 8 bit)
FIC_RGB Mapa de bits en high-color (16, 24 o 32 bit), RGB16 o RGBF.
FIC_RGBALPHA Mapa de bits en high-color con canal alfa (mapa de bits de 32 bit, RGBA16 o RGBAF).
FIC_CMYK Mapa de bits CMYK (sólo de 32 bit).

Tabla 5: constantes FREE_IMAGE_COLOR_TYPE.

Para considerarse como escala de grises (FIC_MINISBLACK), un mapa de bits debe tener una paleta con las siguientes características:

  • Los valores de rojo, verde y azul para cada entrada en la paleta deben ser iguales,
  • El intervalo entre entradas adyacentes de la paleta deben ser positivo e igual a 1.

El modelo de color CMYK (FIC_CMYK) es el preferido si la ilustración necesita imprimirse industrialmente o en prensa. En casi todos los casos, esto lo hacen artistas gráficos: ellos toman una imagen RGB (por ejemplo desde una cámara digital) y corrigen los valores según corresponda a la imagen (un único pixel, brillo, contraste...). Finalmente, lo exportan a una imagen separada CMYK. Esto irá directamente a un programa de diseño y después a las máquinas de impresión. La mayoría de los usuarios de FreeImage nunca necesitarán usar imágenes CMYK, porque los drivers de impresora harán el trabajo de conversión. Pero en la impresión profesional, la conversión profesional es esencial para obtener un resultado de impresión brillante (donde ningún driver hará más que una conversión). Es por eso que las imágenes impresas en algunas revistas se ven mucho mejor que nuestas impresiones domésticas.