Partager via


CImage::CreateEx

Crée une bitmap d' CImage et la attaché à l'objet précédemment construit d' CImage .

BOOL CreateEx(
   int nWidth,
   int nHeight,
   int nBPP,
   DWORD eCompression,
   const DWORD* pdwBitmasks = NULL,
   DWORD dwFlags = 0 
) throw( );

Paramètres

  • nWidth
    La largeur de la bitmap d' CImage , en pixels.

  • nHeight
    La hauteur de la bitmap d' CImage , en pixels.Si nHeight est positif, la bitmap est fichier DIB arrière et son origine est l'angle inférieur gauche.Si nHeight est négatif, la bitmap est verticale fichier DIB et son origine est l'angle supérieur gauche.

  • nBPP
    Le nombre de bits par pixel dans la bitmap.Habituellement 4, 8, 16, 24, ou 32.Peut être composé de 1 pour les bitmaps monochromes ou des caractères génériques.

  • eCompression
    Spécifie le type de compression pour une bitmap descendante compressée (les fichiers DIB hiérarchisés ne peuvent pas être compressés).Peut avoir l'une des valeurs suivantes :

    • BI_RGB le format est non compressé.Spécifier cette valeur en appelant CImage::CreateEx revient à appeler CImage::Create.

    • BI_BITFIELDS le format est non compressé et la table des couleurs se compose de trois caractères génériques de couleur d' DWORD qui spécifient les composantes rouge, vert, bleu et, respectivement, de chaque pixel.C'est valide en cas de utilisation avec 16 32 de bpp bitmap )et.

  • pdwBitfields
    Utilisé uniquement si eCompression a la valeur BI_BITFIELDS, sinon il doit être NULL.Un pointeur vers un tableau de trois masques de bits d' DWORD , en spécifiant les bits de chaque pixel sont utilisés pour les composantes rouge, vert, et bleu de la couleur, respectivement.Pour plus d'informations sur les restrictions pour les champs de bits, consultez BITMAPINFOHEADER dans Kit de développement logiciel Windows.

  • dwFlags
    Spécifie si l'objet bitmap a un canal alpha.Peut être une combinaison de zéro ou plusieurs valeurs suivantes :

    • createAlphaChannel peut être utilisé si nBPP est 32, et eCompression est BI_RGB.Si est spécifié, l'image créée a une valeur alpha (transparence) pour chaque pixel, stockée dans le 4ème octet de chaque pixel (non utilisé dans une image de 32 bits non alpha).Ce canal alpha est utilisé automatiquement en appelant CImage::AlphaBlend.

      [!REMARQUE]

      Dans les appels à CImage::Draw, les images avec un canal alpha sont automatiquement une fusion alpha à la destination.

Valeur de retour

TRUE si l'opération a réussi.Sinon FALSE.

Exemple

L'exemple suivant crée une bitmap du pixel 100x100, à l'aide de 16 bits pour encoder chaque pixel.Dans un pixel 16 bits donné, les bits 0-3 encodent le composant rouge, les bits 4-7 encodent vert, et les bits 8-11 encodent bleu.Les 4 bits restants sont non utilisés.

DWORD adwBitmasks[3] = { 0x0000000f, 0x000000f0, 0x00000f00 };
m_myImage.CreateEx(100, 100, 16, BI_BITFIELDS, adwBitmasks, 0);

Configuration requise

Header: atlimage.h

Voir aussi

Référence

Classe de CImage

CImage::CImage

CImage::Create

CImage::AlphaBlend