Énumération BMFORMAT (icm.h)
Les valeurs du type énuméré BMFORMAT sont utilisées par plusieurs fonctions WCS pour indiquer le format dans lequel se trouvent des bitmaps particulières.
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 Valeur : 0x0000 16 bits par pixel. Espace de couleur RVB. 5 bits par canal. Le bit le plus significatif est ignoré. |
BM_x555XYZ Valeur : 0x0101 16 bits par pixel. Espace de couleur XYZ indépendant de l’appareil CIE. 5 bits par canal. Le bit le plus significatif est ignoré. |
BM_x555Yxy 16 bits par pixel. Espace de couleur Yxy. 5 bits par canal. Le bit le plus significatif est ignoré. |
BM_x555Lab 16 bits par pixel. Espace de couleur L*a*b. 5 bits par canal. Le bit le plus significatif est ignoré. |
BM_x555G3CH 16 bits par pixel. Espace de couleurs G3CH. 5 bits par canal. Le bit le plus significatif est ignoré. |
BM_RGBTRIPLETS Valeur : 0x0002 24 bits par pixel maximum. Pour trois couleurs de canal, telles que Rouge, Vert, Bleu, la taille totale est de 24 bits par pixel. Pour les couleurs à canal unique, telles que le gris, la taille totale est de 8 bits par pixel. |
BM_BGRTRIPLETS Valeur : 0x0004 24 bits par pixel maximum. Pour trois couleurs de canal, telles que Rouge, Vert, Bleu, la taille totale est de 24 bits par pixel. Pour les couleurs à canal unique, telles que le gris, la taille totale est de 8 bits par pixel. |
BM_XYZTRIPLETS Valeur : 0x0201 24 bits par pixel maximum. Pour trois canaux, X, Y et Z, la taille totale est de 24 bits par pixel. Pour l’échelle gris à canal unique, la taille totale est de 8 bits par pixel. REMARQUE La fonction TranslateBitmapBitBits ne prend pas en charge BM_XYZTRIPLETS en tant qu’entrée. |
BM_YxyTRIPLETS 24 bits par pixel maximum. Pour les valeurs de trois canaux, Y, x et y, la taille totale est de 24 bits par pixel. Pour l’échelle gris à canal unique, la taille totale est de 8 bits par pixel. REMARQUE La fonction TranslateBitmapBitBits ne prend pas en charge BM_YxyTRIPLETS en tant qu’entrée. |
BM_LabTRIPLETS 24 bits par pixel maximum. Pour les valeurs de trois canaux, L, a et b, la taille totale est de 24 bits par pixel. Pour l’échelle gris à canal unique, la taille totale est de 8 bits par pixel. |
BM_G3CHTRIPLETS 24 bits par pixel maximum. Pour trois valeurs de canal, la taille totale est de 24 bits par pixel. Pour l’échelle gris à canal unique, la taille totale est de 8 bits par pixel. |
BM_5CHANNEL 40 bits par pixel. 8 bits chacun sont utilisés pour chaque canal. |
BM_6CHANNEL 48 bits par pixel. 8 bits chacun sont utilisés pour chaque canal. |
BM_7CHANNEL 56 bits par pixel. 8 bits chacun sont utilisés pour chaque canal. |
BM_8CHANNEL 64 bits par pixel. 8 bits chacun sont utilisés pour chaque canal. |
BM_GRAY 32 bits par pixel. Seule la valeur d’échelle grise 8 bits est utilisée. |
BM_xRGBQUADS Valeur : 0x0008 32 bits par pixel. 8 bits sont utilisés pour chaque canal de couleur. L’octet le plus significatif est ignoré. |
BM_xBGRQUADS Valeur : 0x0010 32 bits par pixel. 8 bits sont utilisés pour chaque canal de couleur. L’octet le plus significatif est ignoré. |
BM_xG3CHQUADS Valeur : 0x0304 32 bits par pixel. 8 bits sont utilisés pour chaque canal de couleur. L’octet le plus significatif est ignoré. |
BM_KYMCQUADS 32 bits par pixel. 8 bits sont utilisés pour chaque canal de couleur. |
BM_CMYKQUADS Valeur : 0x0020 32 bits par pixel. 8 bits sont utilisés pour chaque canal de couleur. |
BM_10b_RGB Valeur : 0x0009 32 bits par pixel. 10 bits sont utilisés pour chaque canal de couleur. Les 2 bits les plus significatifs sont ignorés. |
BM_10b_XYZ Valeur : 0x0401 32 bits par pixel. 10 bits sont utilisés pour chaque canal de couleur. Les 2 bits les plus significatifs sont ignorés. |
BM_10b_Yxy 32 bits par pixel. 10 bits sont utilisés pour chaque canal de couleur. Les 2 bits les plus significatifs sont ignorés. |
BM_10b_Lab 32 bits par pixel. 10 bits sont utilisés pour chaque canal de couleur. Les 2 bits les plus significatifs sont ignorés. |
BM_10b_G3CH 32 bits par pixel. 10 bits sont utilisés pour chaque canal de couleur. Les 2 bits les plus significatifs sont ignorés. |
BM_NAMED_INDEX 32 bits par pixel. Index de couleur nommés. La numérotation de l’index commence à 1. |
BM_16b_RGB Valeur : 0x000A 48 bits par pixel. Chaque canal utilise 16 bits. |
BM_16b_XYZ Valeur : 0x0501 48 bits par pixel. Chaque canal utilise 16 bits. |
BM_16b_Yxy 48 bits par pixel. Chaque canal utilise 16 bits. |
BM_16b_Lab 48 bits par pixel. Chaque canal utilise 16 bits. |
BM_16b_G3CH 48 bits par pixel. Chaque canal utilise 16 bits. |
BM_16b_GRAY 16 bits par pixel. |
BM_565RGB Valeur : 0x0001 16 bits par pixel. 5 bits sont utilisés pour le rouge, 6 pour le vert et 5 pour le bleu. |
BM_32b_scRGB Valeur : 0x0601 96 bits par pixel, 32 bits par canal IEEE à virgule flottante. |
BM_32b_scARGB Valeur : 0x0602 128 bits par pixel, 32 bits par canal IEEE à virgule flottante. |
BM_S2DOT13FIXED_scRGB Valeur : 0x0603 48 bits par pixel, entier à point fixe compris entre -4 et +4 avec un bit de signe et un exposant 2 bits et une mantisse de 13 bits. |
BM_S2DOT13FIXED_scARGB Valeur : 0x0604 64 bits par pixel, entier à point fixe compris entre -4 et +4 avec un bit de signe et un exposant 2 bits et une mantisse de 13 bits. |
BM_R10G10B10A2 Valeur : 0x0701 32 bits par pixel. 10 bits sont utilisés pour chaque canal de couleur. Les deux bits les plus significatifs sont alpha. |
BM_R10G10B10A2_XR Valeur : 0x0702 32 bits par pixel. 10 bits sont utilisés pour chaque canal de couleur. Les 10 bits de chaque canal de couleur ont un point fixe de 2,8 avec un biais de -0,75, ce qui donne une plage de [-0,76 .. 1.25]. Cette plage correspond à [-0.5 .. 1,5] dans un gamma = 1 espace. Les deux bits les plus significatifs sont conservés pour alpha. Cela utilise un espace de couleur SRGB de plage étendue (XR). Il a les mêmes primaires RVB, point blanc et gamma que sRGB. |
BM_R16G16B16A16_FLOAT Valeur : 0x0703 64 bits par pixel. Chaque canal est un float 16 bits. Le dernier MOT est alpha. |
Remarques
Tableau des formats bitmap
Le tableau suivant indique, pour chacun des formats, le nombre de bits par pixel, le nombre de canaux, l’ordre des canaux et la structure bit par bit de chaque octet. Vous devrez peut-être faire défiler vers la droite pour afficher toutes les colonnes de la table.
Format | Bits par pixel | Nombre de canaux | Ordre des canaux | Octet 0 | Octet 1 | Octet 2 | Octet 3 | Octet 4 | Octet 5 | Octet 6 | Octet 7 |
---|---|---|---|---|---|---|---|---|---|---|---|
BM_GRAY | 8 | 1 | K7K6K5K4K3K2K1K0 | ||||||||
BM_565RGB | 16 | 3 | BVR | G2G1G0B4B3B2B1B0 | R4R3R2R1R0G5G4G3 | ||||||
BM_x555RGB | 16 | 3 | BVR | 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 | BVR | 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 | Laboratoire | 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 | CMJN | C7C6C5C4C3C2C1C0 | M7M6M5M4M3M2M1M0 | Y7Y6Y5Y4Y3Y2Y1Y0 | K7K6K5K4K3K2K1K0 | ||||
BM_10b_RGB | 32 | 3 | BVR | 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 | Laboratoire | 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 | BVR | ||||||||
BM_32b_scARGB | 128 | 3 | BGRA | ||||||||
BM_S2DOT13FIXED_scRGB | 48 | 3 | BVR | ||||||||
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 |
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
En-tête | icm.h |