Convertir una imagen BMP en una imagen PNG
Para guardar una imagen en un archivo de disco, llame al método Save de la clase Image . La siguiente aplicación de consola carga una imagen BMP desde un archivo de disco, convierte la imagen al formato PNG y guarda la imagen convertida en un nuevo archivo de disco. La función principal se basa en la función auxiliar GetEncoderClsid, que se muestra en Recuperación del identificador de clase de un codificador.
#include <windows.h>
#include <gdiplus.h>
#include <stdio.h>
using namespace Gdiplus;
INT GetEncoderClsid(const WCHAR* format, CLSID* pClsid); // helper function
INT main()
{
// Initialize GDI+.
GdiplusStartupInput gdiplusStartupInput;
ULONG_PTR gdiplusToken;
GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
CLSID encoderClsid;
Status stat;
Image* image = new Image(L"Bird.bmp");
// Get the CLSID of the PNG encoder.
GetEncoderClsid(L"image/png", &encoderClsid);
stat = image->Save(L"Bird.png", &encoderClsid, NULL);
if(stat == Ok)
printf("Bird.png was saved successfully\n");
else
printf("Failure: stat = %d\n", stat);
delete image;
GdiplusShutdown(gdiplusToken);
return 0;
}