Méthode IWICDdsFrameDecode ::CopyBlocks (wincodec.h)
Demande des données de pixels telles qu’elles sont stockées en mode natif dans le fichier DDS.
Syntaxe
HRESULT CopyBlocks(
[in] const WICRect *prcBoundsInBlocks,
[in] UINT cbStride,
[in] UINT cbBufferSize,
[out] BYTE *pbBuffer
);
Paramètres
[in] prcBoundsInBlocks
Type : const WICRect*
Rectangle à copier à partir de la source. Une valeur NULL spécifie la texture entière.
Si la texture utilise une DXGI_FORMAT compressée par bloc, toutes les valeurs du rectangle sont exprimées en nombre de blocs, et non en pixels.
[in] cbStride
Type : UINT
La foulée, en octets, de la mémoire tampon de destination. Cela représente le nombre d’octets du pointeur de la mémoire tampon vers la ligne de données suivante. Si la texture utilise une DXGI_FORMAT compressée par bloc, une « ligne de données » est définie comme une ligne de blocs qui contient plusieurs lignes de balayage de pixels.
[in] cbBufferSize
Type : UINT
Taille, en octets, de la mémoire tampon de destination.
[out] pbBuffer
Type : BYTE*
Pointeur vers la mémoire tampon de destination.
Valeur retournée
Type : HRESULT
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Remarques
Si la texture n’utilise pas de DXGI_FORMAT compressé par bloc, cette méthode se comporte de la même façon que IWICBitmapSource ::CopyPixels. Toutefois, il n’effectue aucune conversion de format de pixels et produit à la place les données brutes à partir du fichier DDS.
Si la texture utilise une DXGI_FORMAT compressée par bloc, cette méthode copie les données de bloc directement dans la mémoire tampon fournie. Dans ce cas, le paramètre prcBoundsInBlocks est défini en blocs, et non en pixels. Pour déterminer si c’est le cas, appelez GetFormatInfo et lisez le membre DxgiFormat de la structure WICDdsFormatInfo retournée.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 8.1 [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows Server 2012 R2 [applications de bureau | Applications UWP] |
Plateforme cible | Windows |
En-tête | wincodec.h |
Bibliothèque | Windowscodecs.lib |
DLL | Windowscodecs.dll |