Condividi tramite


Metodo IWICBitmapSourceTransform::CopyPixels (wincodec.h)

Copia i dati pixel usando i parametri di input forniti.

Sintassi

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
);

Parametri

[in] prc

Tipo: const WICRect*

Rettangolo di pixel da copiare.

[in] uiWidth

Tipo: UINT

Larghezza per ridimensionare la bitmap di origine. Questo parametro deve essere uguale al valore ottenuto tramite IWICBitmapSourceTransform::GetClosestSize.

[in] uiHeight

Tipo: UINT

Altezza per ridimensionare la bitmap di origine. Questo parametro deve essere uguale al valore ottenuto tramite IWICBitmapSourceTransform::GetClosestSize.

[in] pguidDstFormat

Tipo: WICPixelFormatGUID*

GUID del formato pixel desiderato in cui devono essere restituiti i pixel.

Questo GUID deve essere un formato ottenuto tramite una chiamata GetClosestPixelFormat .

[in] dstTransform

Tipo: WICBitmapTransformOptions

Rotazione o capovolgimento desiderato da eseguire prima della copia in pixel.

La trasformazione deve essere un'operazione supportata da una chiamata DoesSupportTransform .

Se viene specificato un valore dstTransform , nStride è lo stride trasformato e si basa sul formato pixel pguidDstFormat , non sul formato pixel dell'origine originale.

[in] nStride

Tipo: UINT

Stride del buffer di destinazione.

[in] cbBufferSize

Tipo: UINT

Dimensioni del buffer di destinazione.

[out] pbBuffer

Tipo: BYTE*

Buffer di output.

Valore restituito

Tipo: HRESULT

Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .

Commenti

Osservazioni per gli sviluppatori di codec

Se viene passato NULL per prc, viene copiata l'intera immagine.

Per informazioni dettagliate sull'implementazione dello sviluppatore di codec per questo metodo, vedere Implementazione di IWICBitmapSourceTransform.

Quando vengono richieste più operazioni di trasformazione, il risultato dipende dall'ordine in cui vengono eseguite le operazioni. Per garantire la prevedibilità e la coerenza tra codec, è importante che tutti i CODEC eseguano queste operazioni nello stesso ordine. L'ordine consigliato di queste operazioni è:

  1. Scalabilità
  2. Ritaglia
  3. Capovolgi/ruota

La conversione del formato pixel può essere eseguita in qualsiasi momento, perché non ha alcun effetto sulle altre trasformazioni.

Il primo parametro , prc viene usato per specificare l'area di interesse per il ritaglio dell'immagine. Per convenzione, il ridimensionamento viene eseguito prima del ritaglio in modo che, se l'immagine deve essere ridimensionata e ritagliata, l'area di interesse deve essere determinata dopo che l'immagine è stata ridimensionata.

Se viene specificato un dstTransform , lo stride è lo stride trasformato e si basa sul pixelFormat specificato nella chiamata CopyPixels , non sul formato pixel del fotogramma originale.

Requisiti

Requisito Valore
Client minimo supportato Windows XP con SP2, Windows Vista [app desktop | App UWP]
Server minimo supportato Windows Server 2008 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione wincodec.h
Libreria Windowscodecs.lib

Vedi anche

Informazioni concettuali

IWICBitmapSourceTransform

Microsoft Windows Imaging Codec

Guida per programmatori

Riferimenti

Esempi ed esempi di codice