public static void SavePng(Image img, Stream stream, FreeImagePngQuality freeImagePngQualityType, bool bInterlaced) { using (FreeImageAPI.FreeImageBitmap fib = new FreeImageAPI.FreeImageBitmap(img)) { FREE_IMAGE_SAVE_FLAGS pngQuality = FREE_IMAGE_SAVE_FLAGS.PNG_Z_DEFAULT_COMPRESSION; switch (freeImagePngQualityType) { case FreeImagePngQuality.PNG_Z_BEST_COMPRESSION: pngQuality = FREE_IMAGE_SAVE_FLAGS.PNG_Z_BEST_COMPRESSION; break; case FreeImagePngQuality.PNG_Z_BEST_SPEED: pngQuality = FREE_IMAGE_SAVE_FLAGS.PNG_Z_BEST_SPEED; break; case FreeImagePngQuality.PNG_Z_DEFAULT_COMPRESSION: pngQuality = FREE_IMAGE_SAVE_FLAGS.PNG_Z_DEFAULT_COMPRESSION; break; case FreeImagePngQuality.PNG_Z_NO_COMPRESSION: pngQuality = FREE_IMAGE_SAVE_FLAGS.PNG_Z_NO_COMPRESSION; break; } if (bInterlaced) { pngQuality = FREE_IMAGE_SAVE_FLAGS.PNG_INTERLACED | pngQuality; } fib.Save(stream, FreeImageAPI.FREE_IMAGE_FORMAT.FIF_PNG, pngQuality); } }
public static void SavePng(Image img, Stream stream, FreeImagePngQuality freeImagePngQualityType, bool bInterlaced) { using (FreeImageAPI.FreeImageBitmap fib = new FreeImageAPI.FreeImageBitmap(img)) { FREE_IMAGE_SAVE_FLAGS pngQuality = FREE_IMAGE_SAVE_FLAGS.PNG_Z_DEFAULT_COMPRESSION; switch (freeImagePngQualityType) { case FreeImagePngQuality.PNG_Z_BEST_COMPRESSION: pngQuality = FREE_IMAGE_SAVE_FLAGS.PNG_Z_BEST_COMPRESSION; break; case FreeImagePngQuality.PNG_Z_BEST_SPEED: pngQuality = FREE_IMAGE_SAVE_FLAGS.PNG_Z_BEST_SPEED; break; case FreeImagePngQuality.PNG_Z_DEFAULT_COMPRESSION: pngQuality = FREE_IMAGE_SAVE_FLAGS.PNG_Z_DEFAULT_COMPRESSION; break; case FreeImagePngQuality.PNG_Z_NO_COMPRESSION: pngQuality = FREE_IMAGE_SAVE_FLAGS.PNG_Z_NO_COMPRESSION; break; } if (bInterlaced) pngQuality = FREE_IMAGE_SAVE_FLAGS.PNG_INTERLACED | pngQuality; fib.Save(stream, FreeImageAPI.FREE_IMAGE_FORMAT.FIF_PNG, pngQuality); } }