Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Converte periodicamente una bitmap da un formato definito in un formato definito diverso e chiama periodicamente una funzione di callback, se specificata, per segnalare lo stato di avanzamento e consentire all'applicazione chiamante di terminare la traduzione.
Sintassi
BOOL CMTranslateRGBsExt(
HCMTRANSFORM hcmTransform,
LPVOID lpSrcBits,
BMFORMAT bmInput,
DWORD dwWidth,
DWORD dwHeight,
DWORD dwInputStride,
LPVOID lpDestBits,
BMFORMAT bmOutput,
DWORD dwOutputStride,
LPBMCALLBACKFN lpfnCallback,
LPARAM ulCallbackData
);
Parametri
hcmTransform
Specifica la trasformazione del colore da utilizzare.
lpSrcBits
Puntatore alla bitmap da convertire.
bmInput
Specifica il formato bitmap di input.
dwWidth
Specifica il numero di pixel per riga di analisi nella bitmap di input.
dwHeight
Specifica il numero di righe di analisi nella bitmap di input.
dwInputStride
Specifica il numero di byte dall'inizio di una riga di analisi all'inizio della successiva nella bitmap di input. Se dwInputStride è impostato su zero, CMM deve presupporre che le righe di analisi siano riempite in modo da essere allineate con DWORD.
lpDestBits
Punta a un buffer di destinazione in cui posizionare la bitmap tradotta.
bmOutput
Specifica il formato bitmap di output.
dwOutputStride
Specifica il numero di byte dall'inizio di una riga di analisi all'inizio della successiva nella bitmap di input. Se dwOutputStride è impostato su zero, il CMM deve analizzare le linee in modo che siano allineate a DWORD.
lpfnCallback
Puntatore a una funzione di callback fornita dall'applicazione chiamata periodicamente da CMTranslateRGBsExt per segnalare lo stato di avanzamento e consentire al processo chiamante di annullare la traduzione. Vedere ICMProgressProcCallback.
ulCallbackData
I dati passati alla funzione di callback, ad esempio per identificare la traduzione che segnala lo stato di avanzamento.
Valore restituito
Se questa funzione ha esito positivo, il valore restituito è TRUE.
Se questa funzione ha esito negativo, il valore restituito è FALSE e CMM deve chiamare SetLastError per impostare l'ultimo errore su un valore di errore valido definito in Winerror.h.
Osservazioni:
Ogni CMM è necessario per esportare questa funzione.
Quando si scrive nel buffer di destinazione, CMM deve assicurarsi che le righe di analisi siano riempite per essere allineate a DWORD.
Se i formati di input e output non sono compatibili con la trasformazione del colore, questa funzione ha esito negativo.
Se entrambi i formati bitmap di input e output sono 3 canali, 4 byte per pixel come nel caso di BM_xRGBQUADS, i quarto byte devono essere conservati e copiati nel buffer di output.
Se la funzione di callback restituisce zero, l'elaborazione deve essere annullata e CMTranslateRGBsExt deve restituire zero per indicare l'errore; il buffer di output può essere parzialmente riempito.
Si noti che questa funzione deve supportare la conversione sul posto. Ovvero, ogni volta che il footprint di memoria dell'output è minore o uguale al footprint di memoria dell'input, questa funzione deve essere in grado di convertire i colori bitmap anche se i buffer di origine e di destinazione sono uguali.
Requisiti
| Requisito | Value |
|---|---|
| Client minimo supportato | Windows 2000 Professional [solo app desktop] |
| Server minimo supportato | Windows 2000 Server [solo app desktop] |
| Header | icm.h |
| Library | Icm32.Lib |