freeimage.h

FreeImage_JPEGTransformCombinedFromMemory

BOOL DLL_CALLCONV FreeImage_JPEGTransformCombinedFromMemory(FIMEMORY* src_stream,
FIMEMORY* dst_stream, FREE_IMAGE_JPEG_OPERATION operation, int* left, int* top, int*
right, int* bottom, BOOL perfect FI_DEFAULT(TRUE));

Esta función trabaja exactamente igual que FreeImage_JPEGTransformCombined pero soporta manipuladores de memoria en lugar de nombres de fichero.

Hay que tener en cuenta que no se puede guardar un fichero JPEG a un canal de memoria de destino cuando el manipulador de memoria de destino es un envoltorio buffer de usuario (sólo lectura). Así que el parámetro dst_stream debe ser un manipulador de memoria de lectura/escritura, es decir, un manipulador abierto usando FreeImage_OpenMemory(NULL, 0).

Los parámetros src_stream y dst_stream pueden apuntar al mismo canal, siempre que el canal no se a de sólo lectura.