Partager via


Méthode IWICBitmapSourceTransform ::CopyPixels (wincodec.h)

Copie les données de pixels à l’aide des paramètres d’entrée fournis.

Syntaxe

HRESULT CopyPixels(
  [in]  const WICRect             *prc,
  [in]  UINT                      uiWidth,
  [in]  UINT                      uiHeight,
  [in]  WICPixelFormatGUID        *pguidDstFormat,
  [in]  WICBitmapTransformOptions dstTransform,
  [in]  UINT                      nStride,
  [in]  UINT                      cbBufferSize,
  [out] BYTE                      *pbBuffer
);

Paramètres

[in] prc

Type : const WICRect*

Rectangle de pixels à copier.

[in] uiWidth

Type : UINT

Largeur de mise à l’échelle de la bitmap source. Ce paramètre doit être égal à la valeur pouvant être obtenue via IWICBitmapSourceTransform ::GetClosestSize.

[in] uiHeight

Type : UINT

Hauteur de mise à l’échelle de la bitmap source. Ce paramètre doit être égal à la valeur pouvant être obtenue via IWICBitmapSourceTransform ::GetClosestSize.

[in] pguidDstFormat

Type : WICPixelFormatGUID*

GUID du format de pixel souhaité dans lequel les pixels doivent être retournés.

Ce GUID doit être un format obtenu via un appel GetClosestPixelFormat .

[in] dstTransform

Type : WICBitmapTransformOptions

Rotation ou retournement souhaité à effectuer avant la copie de pixels.

La transformation doit être une opération prise en charge par un appel DoesSupportTransform .

Si un dstTransform est spécifié, nStride est la foulée transformée et est basé sur le format de pixel pguidDstFormat , et non sur le format de pixel de la source d’origine.

[in] nStride

Type : UINT

La foulée de la mémoire tampon de destination.

[in] cbBufferSize

Type : UINT

Taille de la mémoire tampon de destination.

[out] pbBuffer

Type : BYTE*

Mémoire tampon de sortie.

Valeur retournée

Type : HRESULT

Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Remarques

Remarques du développeur codec

Si NULL est passé pour prc, l’image entière est copiée.

Pour plus d’informations sur l’implémentation du développeur de codecs pour cette méthode, consultez Implémentation de IWICBitmapSourceTransform.

Lorsque plusieurs opérations de transformation sont demandées, le résultat dépend de l’ordre dans lequel les opérations sont effectuées. Pour garantir la prévisibilité et la cohérence entre les CODESC, il est important que tous les CODEC effectuent ces opérations dans le même ordre. L’ordre recommandé pour ces opérations est le suivant :

  1. Scale
  2. Rogner
  3. Retourner/faire pivoter

La conversion de format de pixels peut être effectuée à tout moment, car elle n’a aucun effet sur les autres transformations.

Le premier paramètre, prc , est utilisé pour spécifier la région d’intérêt pour la capture de l’image. Par convention, la mise à l’échelle est effectuée avant le découpage. Ainsi, si l’image doit être mise à l’échelle et découpée, la zone d’intérêt doit être déterminée après la mise à l’échelle de l’image.

Si un dstTransform est spécifié, la foulée est la foulée transformée et est basée sur le pixelFormat spécifié dans l’appel CopyPixels , et non sur le format de pixel du cadre d’origine.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP avec SP2, Windows Vista [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête wincodec.h
Bibliothèque Windowscodecs.lib

Voir aussi

Conceptuel

IWICBitmapSourceTransform

Codec d’acquisition d’images Microsoft Windows

Guide de programmation

Informations de référence

Exemples et exemples de code