IWICBitmapSourceTransform::CopyPixels-Methode (wincodec.h)
Kopiert Pixeldaten mit den angegebenen Eingabeparametern.
Syntax
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
);
Parameter
[in] prc
Typ: const WICRect*
Das Rechteck der zu kopierenden Pixel.
[in] uiWidth
Typ: UINT
Die Breite, mit der die Quellbitbitbit skaliert werden soll. Dieser Parameter muss dem Wert entsprechen, der über IWICBitmapSourceTransform::GetClosestSize abgerufen werden kann.
[in] uiHeight
Typ: UINT
Die Höhe, in der die Quellbitbitbit skaliert werden soll. Dieser Parameter muss dem Wert entsprechen, der über IWICBitmapSourceTransform::GetClosestSize abgerufen werden kann.
[in] pguidDstFormat
Typ: WICPixelFormatGUID*
Die GUID des gewünschten Pixelformats, in dem die Pixel zurückgegeben werden sollen.
Diese GUID muss ein Format sein, das über einen GetClosestPixelFormat-Aufruf abgerufen wird.
[in] dstTransform
Typ: WICBitmapTransformOptions
Die gewünschte Drehung oder Drehung, die vor dem Kopieren des Pixels ausgeführt werden soll.
Die Transformation muss ein Vorgang sein, der von einem DoesSupportTransform-Aufruf unterstützt wird.
Wenn ein dstTransform angegeben wird, ist nStride der transformierte Schritt und basiert auf dem Pixelformat pguidDstFormat , nicht auf dem Pixelformat der ursprünglichen Quelle.
[in] nStride
Typ: UINT
Der Schritt des Zielpuffers.
[in] cbBufferSize
Typ: UINT
Die Größe des Zielpuffers.
[out] pbBuffer
Typ: BYTE*
Der Ausgabepuffer.
Rückgabewert
Typ: HRESULT
Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.
Hinweise
Hinweise für Codec-Entwickler
Wenn NULL für prc übergeben wird, wird das gesamte Bild kopiert.Details zur Codecentwicklerimplementierung für diese Methode finden Sie unter Implementieren von IWICBitmapSourceTransform.
Wenn mehrere Transformationsvorgänge angefordert werden, hängt das Ergebnis von der Reihenfolge ab, in der die Vorgänge ausgeführt werden. Um Vorhersagbarkeit und Konsistenz zwischen CODECs sicherzustellen, ist es wichtig, dass alle CODECs diese Vorgänge in derselben Reihenfolge ausführen. Die empfohlene Reihenfolge dieser Vorgänge lautet:
- Skalieren
- Crop
- Kippen/Drehen
Die Pixelformatkonvertierung kann jederzeit ausgeführt werden, da sie keine Auswirkungen auf die anderen Transformationen hat.
Der erste Parameter , prc , wird verwendet, um den bereich anzugeben, der für das Ausschneiden des Bilds von Interesse ist. Gemäß der Konvention wird die Skalierung vor dem Clipping durchgeführt. Wenn das Bild also skaliert und beschnitten werden soll, sollte der gewünschte Bereich bestimmt werden, nachdem das Bild skaliert wurde.
Wenn ein dstTransform angegeben wird, ist die Stride der transformierte Schritt und basiert auf dem pixelFormat, das im CopyPixels-Aufruf angegeben ist, nicht auf dem Pixelformat des ursprünglichen Frames.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP mit SP2, Windows Vista [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | wincodec.h |
Bibliothek | Windowscodecs.lib |
Siehe auch
Konzept