Example #1
0
        public static MemoryStream SaveImage(this Image img, Workflow workflow, EImageFormat imageFormat)
        {
            MemoryStream stream = new MemoryStream();

            switch (imageFormat)
            {
            case EImageFormat.PNG:
                DebugHelper.WriteLine("Performing PNG {0} {1} interlace", workflow.ImagePngCompression.GetDescription(), workflow.ImagePngInterlaced ? "with" : "without");
                FreeImageNETHelper.SavePng(img, stream, workflow.ImagePngCompression, workflow.ImagePngInterlaced);
                break;

            case EImageFormat.JPEG:
                img.SaveJPG(stream, workflow, true);
                break;

            case EImageFormat.GIF:
                // FreeImageNETHelper.SaveGif(img, stream);
                img.SaveGIF(stream, workflow.ImageGIFQuality);
                break;

            case EImageFormat.BMP:
                img.Save(stream, ImageFormat.Bmp);
                break;

            case EImageFormat.TIFF:
                DebugHelper.WriteLine("Performing TIFF {0} ", workflow.ImageTiffCompression.GetDescription());
                FreeImageNETHelper.SaveTiff(img, stream, workflow.ImageTiffCompression);
                break;
            }

            return(stream);
        }
Example #2
0
        public static void SaveJPG(this Image img, Stream stream, Workflow workflow, bool fillBackground)
        {
            if (fillBackground)
            {
                img = FillImageBackground(img, Color.White);
            }

            // Using FreeImage converter.
            FreeImageNETHelper.SaveJpeg(img, stream, workflow.ImageJpegQuality, workflow.ImageJpegSubSampling);
        }