Enumeração BMFORMAT (icm.h)
Os valores do tipo enumerado BMFORMAT são usados por várias funções WCS para indicar o formato em que bitmaps específicos estão.
Syntax
typedef enum {
BM_x555RGB = 0x0000,
BM_x555XYZ = 0x0101,
BM_x555Yxy,
BM_x555Lab,
BM_x555G3CH,
BM_RGBTRIPLETS = 0x0002,
BM_BGRTRIPLETS = 0x0004,
BM_XYZTRIPLETS = 0x0201,
BM_YxyTRIPLETS,
BM_LabTRIPLETS,
BM_G3CHTRIPLETS,
BM_5CHANNEL,
BM_6CHANNEL,
BM_7CHANNEL,
BM_8CHANNEL,
BM_GRAY,
BM_xRGBQUADS = 0x0008,
BM_xBGRQUADS = 0x0010,
BM_xG3CHQUADS = 0x0304,
BM_KYMCQUADS,
BM_CMYKQUADS = 0x0020,
BM_10b_RGB = 0x0009,
BM_10b_XYZ = 0x0401,
BM_10b_Yxy,
BM_10b_Lab,
BM_10b_G3CH,
BM_NAMED_INDEX,
BM_16b_RGB = 0x000A,
BM_16b_XYZ = 0x0501,
BM_16b_Yxy,
BM_16b_Lab,
BM_16b_G3CH,
BM_16b_GRAY,
BM_565RGB = 0x0001,
BM_32b_scRGB = 0x0601,
BM_32b_scARGB = 0x0602,
BM_S2DOT13FIXED_scRGB = 0x0603,
BM_S2DOT13FIXED_scARGB = 0x0604,
BM_R10G10B10A2 = 0x0701,
BM_R10G10B10A2_XR = 0x0702,
BM_R16G16B16A16_FLOAT = 0x0703
} BMFORMAT;
Constantes
BM_x555RGB Valor: 0x0000 16 bits por pixel. Espaço de cor RGB. 5 bits por canal. O bit mais significativo é ignorado. |
BM_x555XYZ Valor: 0x0101 16 bits por pixel. Espaço de cor XYZ independente do dispositivo CIE. 5 bits por canal. O bit mais significativo é ignorado. |
BM_x555Yxy 16 bits por pixel. Espaço de cor Yxy. 5 bits por canal. O bit mais significativo é ignorado. |
BM_x555Lab 16 bits por pixel. Espaço em cores L*a*b. 5 bits por canal. O bit mais significativo é ignorado. |
BM_x555G3CH 16 bits por pixel. Espaço de cor G3CH. 5 bits por canal. O bit mais significativo é ignorado. |
BM_RGBTRIPLETS Valor: 0x0002 Máximo de 24 bits por pixel. Para três cores de canal, como Vermelho, Verde, Azul, o tamanho total é de 24 bits por pixel. Para cores de canal único, como cinza, o tamanho total é de 8 bits por pixel. |
BM_BGRTRIPLETS Valor: 0x0004 Máximo de 24 bits por pixel. Para três cores de canal, como Vermelho, Verde, Azul, o tamanho total é de 24 bits por pixel. Para cores de canal único, como cinza, o tamanho total é de 8 bits por pixel. |
BM_XYZTRIPLETS Valor: 0x0201 Máximo de 24 bits por pixel. Para os valores de três canais, X, Y e Z, o tamanho total é de 24 bits por pixel. Para escala cinza de canal único, o tamanho total é de 8 bits por pixel. OBSERVAÇÃO A função TranslateBitmapBits não dá suporte a BM_XYZTRIPLETS como entrada. |
BM_YxyTRIPLETS Máximo de 24 bits por pixel. Para três valores de canal, Y, x e y, o tamanho total é de 24 bits por pixel. Para escala cinza de canal único, o tamanho total é de 8 bits por pixel. OBSERVAÇÃO A função TranslateBitmapBits não dá suporte a BM_YxyTRIPLETS como entrada. |
BM_LabTRIPLETS Máximo de 24 bits por pixel. Para três valores de canal, L, a e b, o tamanho total é de 24 bits por pixel. Para escala cinza de canal único, o tamanho total é de 8 bits por pixel. |
BM_G3CHTRIPLETS Máximo de 24 bits por pixel. Para três valores de canal, o tamanho total é de 24 bits por pixel. Para escala cinza de canal único, o tamanho total é de 8 bits por pixel. |
BM_5CHANNEL 40 bits por pixel. 8 bits cada são usados para cada canal. |
BM_6CHANNEL 48 bits por pixel. 8 bits cada são usados para cada canal. |
BM_7CHANNEL 56 bits por pixel. 8 bits cada são usados para cada canal. |
BM_8CHANNEL 64 bits por pixel. 8 bits cada são usados para cada canal. |
BM_GRAY 32 bits por pixel. Somente o valor de escala cinza de 8 bits é usado. |
BM_xRGBQUADS Valor: 0x0008 32 bits por pixel. 8 bits são usados para cada canal de cores. O byte mais significativo é ignorado. |
BM_xBGRQUADS Valor: 0x0010 32 bits por pixel. 8 bits são usados para cada canal de cores. O byte mais significativo é ignorado. |
BM_xG3CHQUADS Valor: 0x0304 32 bits por pixel. 8 bits são usados para cada canal de cores. O byte mais significativo é ignorado. |
BM_KYMCQUADS 32 bits por pixel. 8 bits são usados para cada canal de cores. |
BM_CMYKQUADS Valor: 0x0020 32 bits por pixel. 8 bits são usados para cada canal de cores. |
BM_10b_RGB Valor: 0x0009 32 bits por pixel. 10 bits são usados para cada canal de cores. Os dois bits mais significativos são ignorados. |
BM_10b_XYZ Valor: 0x0401 32 bits por pixel. 10 bits são usados para cada canal de cores. Os dois bits mais significativos são ignorados. |
BM_10b_Yxy 32 bits por pixel. 10 bits são usados para cada canal de cores. Os dois bits mais significativos são ignorados. |
BM_10b_Lab 32 bits por pixel. 10 bits são usados para cada canal de cores. Os dois bits mais significativos são ignorados. |
BM_10b_G3CH 32 bits por pixel. 10 bits são usados para cada canal de cores. Os dois bits mais significativos são ignorados. |
BM_NAMED_INDEX 32 bits por pixel. Índices de cores nomeados. A numeração de índice começa em 1. |
BM_16b_RGB Valor: 0x000A 48 bits por pixel. Cada canal usa 16 bits. |
BM_16b_XYZ Valor: 0x0501 48 bits por pixel. Cada canal usa 16 bits. |
BM_16b_Yxy 48 bits por pixel. Cada canal usa 16 bits. |
BM_16b_Lab 48 bits por pixel. Cada canal usa 16 bits. |
BM_16b_G3CH 48 bits por pixel. Cada canal usa 16 bits. |
BM_16b_GRAY 16 bits por pixel. |
BM_565RGB Valor: 0x0001 16 bits por pixel. 5 bits são usados para vermelho, 6 para verde e 5 para azul. |
BM_32b_scRGB Valor: 0x0601 96 bits por pixel, 32 bits por ponto flutuante IEEE de canal. |
BM_32b_scARGB Valor: 0x0602 128 bits por pixel, 32 bits por ponto flutuante IEEE de canal. |
BM_S2DOT13FIXED_scRGB Valor: 0x0603 48 bits por pixel, Inteiro de ponto fixo variando de -4 a +4 com um bit de sinal e expoente de 2 bits e mantissa de 13 bits. |
BM_S2DOT13FIXED_scARGB Valor: 0x0604 64 bits por pixel, Inteiro de ponto fixo variando de -4 a +4 com um bit de sinal e expoente de 2 bits e mantissa de 13 bits. |
BM_R10G10B10A2 Valor: 0x0701 32 bits por pixel. 10 bits são usados para cada canal de cores. Os dois bits mais significativos são alfa. |
BM_R10G10B10A2_XR Valor: 0x0702 32 bits por pixel. 10 bits são usados para cada canal de cores. Os 10 bits de cada canal de cores são 2,8 pontos fixos com um viés -0,75, dando um intervalo de [-0,76 .. 1.25]. Esse intervalo corresponde a [-0,5 .. 1,5] em um gama = 1 espaço. Os dois bits mais significativos são preservados para alfa. Isso usa um espaço de cor SRGB de intervalo estendido (XR). Ele tem as mesmas primárias RGB, ponto branco e gama que sRGB. |
BM_R16G16B16A16_FLOAT Valor: 0x0703 64 bits por pixel. Cada canal é um float de 16 bits. O último WORD é alfa. |
Comentários
Tabela de formatos de bitmap
A tabela a seguir mostra, para cada um dos formatos, o número de bits por pixel, o número de canais, a ordem dos canais e a estrutura bit a bit de cada byte. Talvez seja necessário rolar para a direita para ver todas as colunas da tabela.
Formatar | Bits por Pixel | Número de canais | Ordenação de Canal | Byte 0 | Byte 1 | Byte 2 | Byte 3 | Byte 4 | Byte 5 | Byte 6 | Byte 7 |
---|---|---|---|---|---|---|---|---|---|---|---|
BM_GRAY | 8 | 1 | K7K6K5K4K3K2K1K0 | ||||||||
BM_565RGB | 16 | 3 | BGR | G2G1G0B4B3B2B1B0 | R4R3R2R1R0G5G4G3 | ||||||
BM_x555RGB | 16 | 3 | BGR | G2G1G0B4B3B2B1B0 | xR4R3R2R1R0G4G3 | ||||||
BM_x555XYZ | 16 | 3 | ZYX | Y2Y1Y0Z4Z3Z2Z1Z0 | xX4X3X2X1X0Y4Y3 | ||||||
BM_x555Yxy | 16 | 3 | yxY | x2x1x0y4y3y2y1y0 | xY4Y3Y2Y1Y0x4x3 | ||||||
BM_x555Lab | 16 | 3 | Bal | a2a1a0b4b3b2b1b0 | xL4L3L2L1L0a4a3 | ||||||
BM_x555G3CH | 16 | 3 | 123 | xC14C13C12C11C10C24C23 | C22C21C20C34C33C32C31C30 | ||||||
BM_16b_GRAY | 16 | 1 | K | K7K6K5K4K3K2K1K0 | K15K14K13K12K11K10K9K8 | ||||||
BM_RGBTRIPLETS | 24 | 3 | BGR | B7B6B5B4B3B2B1B0 | G7G6G5G4G3G2G1G0 | R7R6R5R4R3R2R1R0 | |||||
BM_BGRTRIPLETS | 24 | 3 | RGB | R7R6R5R4R3R2R1R0 | G7G6G5G4G3G2G1G0 | B7B6B5B4B3B2B1B0 | |||||
BM_XYZTRIPLETS | 24 | 3 | XYZ | X7X6X5X4X3X2X1X0 | Y7Y6Y5Y4Y3Y2Y1Y0 | Z7Z6Z5Z4Z3Z2Z1Z0 | |||||
BM_YxyTRIPLETS | 24 | 3 | Yxy | Y7Y6Y5Y4Y3Y2Y1Y0 | x7x6x5x4x3x2x1x0 | y7y6y5y4y3y2y1y0 | |||||
BM_LabTRIPLETS | 24 | 3 | Laboratório | L7L6L5L4L3L2L1L0 | a7a6a5a4a3a2a1a0 | b7b6b5b4b3b2b1b0 | |||||
BM_G3CHTRIPLETS | 24 | 3 | 123 | C17C16C15C14C13C12C11C10 | C27C26C25C24C23C22C21C20 | C37C36C35C34C33C32C31C30 | |||||
BM_xRGBQUADS | 32 | 3 | BGRx | B7B6B5B4B3B2B1B0 | G7G6G5G4G3G2G1G0 | R7R6R5R4R3R2R1R0 | Xxxxxxxx | ||||
BM_xBGRQUADS | 32 | 3 | RGBx | R7R6R5R4R3R2R1R0 | G7G6G5G4G3G2G1G0 | B7B6B5B4B3B2B1B0 | Xxxxxxxx | ||||
BM_xG3CHQUADS | 32 | 3 | 123x | C17C16C15C14C13C12C11C10 | C27C26C25C24C23C22C21C20 | C37C36C35C34C33C32C31C30 | Xxxxxxxx | ||||
BM_CMYKQUADS | 32 | 4 | KYMC | K7K6K5K4K3K2K1K0 | Y7Y6Y5Y4Y3Y2Y1Y0 | M7M6M5M4M3M2M1M0 | C7C6C5C4C3C2C1C0 | ||||
BM_KYMCQUADS | 32 | 4 | CMYK | C7C6C5C4C3C2C1C0 | M7M6M5M4M3M2M1M0 | Y7Y6Y5Y4Y3Y2Y1Y0 | K7K6K5K4K3K2K1K0 | ||||
BM_10b_RGB | 32 | 3 | BGR | B7B6B5B4B3B2B1B0 | G5G4G3G2G1G0B9B8 | R3R2R1R0G9G8G7G6 | xxR9R8R7R6R5R4 | ||||
BM_10b_XYZ | 32 | 3 | ZYX | Z7Z6Z5Z4Z3Z2Z1Z0 | Y5Y4Y3Y2Y1Y0Z9Z8 | X3X2X1X0Y9Y8Y7Y6 | xxX9X8X7X6X5X4 | ||||
BM_10b_Yxy | 32 | 3 | yxY | y7y6y5y4y3y2y1y0 | x5x4x3x2x1x0y9y8 | Y3Y2Y1Y0x9x8x7x6 | xxY9Y8Y7Y6Y5Y4 | ||||
BM_10b_Lab | 32 | 3 | Bal | b7b6b5b4b3b2b1b0 | a5a4a3a2a1a0b9b8 | L3L2L1L0a9a8a7a6 | xxL9L8L7L6L5L4 | ||||
BM_10b_G3CH | 32 | 3 | 321 | C37C36C35C34C33C32C31C30 | C25C24C23C22C21C20C39C38 | C13C12C11C10C29C28C27C26 | xxC19C18C17C16C15C14 | ||||
BM_NAMED_INDEX | 32 | n7n6n5n4n3n2n1n0 | n15n14n13n12n11n10n9n8 | n23n22n21n20n19n18n17n16 | n31n30n29n28n27n26n25n24 | ||||||
BM_5CHANNEL | 40 | 5 | 12345 | C17C16C15C14C13C12C11C10 | C27C26C25C24C23C22C21C20 | C37C36C35C34C33C32C31C30 | C47C46C45C44C43C42C41C40 | C57C56C55C54C53C52C51C50 | |||
BM_6CHANNEL | 48 | 6 | 123456 | C17C16C15C14C13C12C11C10 | C27C26C25C24C23C22C21C20 | C37C36C35C34C33C32C31C30 | C47C46C45C44C43C42C41C40 | C57C56C55C54C53C52C51C50 | C67C66C65C64C63C62C61C60 | ||
BM_16b_RGB | 48 | 3 | RGB | R7R6R5R4R3R2R1R0 | R15R14R13R12R11R10R9R8 | G7G6G5G4G3G2G1G0 | G15G14G13G12G11G10G9G8 | B7B6B5B4B3B2B1B0 | B15B14B13B12B11B10B9B8 | ||
BM_16b_XYZ | 48 | 3 | XYZ | X7X6X5X4X3X2X1X0 | X15X14X13X12X11X10X9X8 | Y7Y6Y5Y4Y3Y2Y1Y0 | Y15Y14Y13Y12Y11Y10Y9Y8 | Z7Z6Z5Z4Z3Z2Z1Z0 | Z15Z14Z13Z12Z11Z10Z9Z8 | ||
BM_16b_Lab | 48 | 3 | Laboratório | L7L6L5L4L3L2L1L0 | L15L14L13L12L11L10L9L8 | a7a6a5a4a3a2a1a0 | a15a14a13a12a11a10a9a8 | b7b6b5b4b3b2b1b0 | b15b14b13b12b11b10b9b8 | ||
BM_16b_G3CH | 48 | 3 | 321 | C37C36C35C34C33C32C31C30 | C315C314C313C312C311C310C39C38 | C27C26C25C24C23C22C21C20 | C215C214C213C212C211C210C29C28 | C17C16C15C14C13C12C11C10 | C115C114C113C112C111C110C19C18 | ||
BM_16b_Yxy | 48 | 3 | Yxy | Y7Y6Y5Y4Y3Y2Y1Y0 | Y15Y14Y13Y12Y11Y10Y9Y8 | x7x6x5x4x3x2x1x0 | x15x14x13x12x11x10x9x8 | y7y6y5y4y3y2y1y0 | y15y14y13y12y11y10y9y8 | ||
BM_7CHANNEL | 56 | 7 | 1234567 | C17C16C15C14C13C12C11C10 | C27C26C25C24C23C22C21C20 | C37C36C35C34C33C32C31C30 | C47C46C45C44C43C42C41C40 | C57C56C55C54C53C52C51C50 | C67C66C65C64C63C62C61C60 | C77C76C75C74C73C72C71C70 | |
BM_8CHANNEL | 64 | 8 | 12345678 | C17C16C15C14C13C12C11C10 | C27C26C25C24C23C22C21C20 | C37C36C35C34C33C32C31C30 | C47C46C45C44C43C42C41C40 | C57C56C55C54C53C52C51C50 | C67C66C65C64C63C62C61C60 | C77C76C75C74C73C72C71C70 | C87C86C85C84C83C82C81C80 |
BM_32b_scRGB | 96 | 3 | BGR | ||||||||
BM_32b_scARGB | 128 | 3 | BGRA | ||||||||
BM_S2DOT13FIXED_scRGB | 48 | 3 | BGR | ||||||||
BM_S2DOT13FIXED_scARGB | 64 | 3 | BGRA | ||||||||
BM_R10G10B10A2 | 32 | 3 | ABGR | A7A6B5B4B3B2B1B0 | B7B6B5B4G3G2G1G0 | G7G6G5G4G3G2R1R0 | R7R6R5R4R3R2R1R0 | ||||
BM_R10G10B10A2_XR | 32 | 3 | ABGR | A7A6B5B4B3B2B1B0 | B7B6B5B4G3G2G1G0 | G7G6G5G4G3G2R1R0 | R7R6R5R4R3R2R1R0 | ||||
BM_R16G16B16A16_FLOAT | 64 | 3 | RGBA | R7R6R5R4R3R2R1R0 | R7R6R5R4R3R2R1R0 | G7G6G5G4G3G2G1G0 | G7G6G5G4G3G2G1G0 | B7B6B5B4B3B2B1B0 | B7B6B5B4B3B2B1B0 | A7A6A5A4A3A2A1A0 | A7A6A5A4A3A2A1A0 |
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Cabeçalho | icm.h |