Implémentation d’IWICBitmapSource
IWICBitmapSource
IWICBitmapSource est important pour travailler avec des images du point de vue de l’application. Il représente l’abstraction de niveau le plus élevé pour une source d’image, et toutes les interfaces WIC (Windows Imaging Component) qui représentent une image, y compris IWICBitmapFrameDecode, IWICBitmap et toutes les interfaces de transformation (IWICBitmapScaler, IWICBitmapClipper, IWICBitmapFlipRotator et IWICFormatConverter) en sont dérivées. À tout moment, un objet IWICBitmapSource peut être sauvegardé ou non par une image bitmap réelle en mémoire. Cela permet un traitement très efficace par une application, car une image peut être traitée comme une abstraction. Les opérations de transformation peuvent être chaînées dans un pipeline de transformation sans consommer de ressources de mémoire jusqu’à ce que l’application soit prête à afficher ou à imprimer l’image. Elle appelle alors la méthode CopyPixels sur la transformation finale pour obtenir une bitmap en mémoire de l’image avec les transformations sélectionnées appliquées.
interface IWICBitmapSource : IUnknown
{
// Required methods
HRESULT GetSize ( UINT *puiWidth, UINT *puiHeight );
HRESULT GetPixelFormat ( WICPixelFormatGUID *pPixelFormat );
HRESULT GetResolution ( double *pDpiX, double *pDpiY );
HRESULT CopyPixels ( const WICRect *prc,
UINT cbStride,
UINT cbBufferSize,
BYTE *pbBuffer );
// Optional method
HRESULT CopyPalette ( IWICPalette *pIPalette );
}
Du point de vue du codec, les méthodes IWICBitmapSource sont implémentées sur l’objet décodeur de trame. Ces méthodes sont décrites dans Implémentation de IWICBitmapSource, ainsi que les autres méthodes sur IWICBitmapFrameDecode, qui est dérivé de IWICBitmapSource.
Rubriques connexes
-
Informations de référence
-
Conceptuel
-
Implémentation de IWICBitmapCodecProgressNotification (Décodeur)