(WPF C#)图像水印和调整大小

时间:2012-05-16 06:28:43

标签: c# wpf image watermark

我的WPF应用程序已经可以调整图像大小和文本水印。当转换后的图像尺寸为700px x 700px且水印文本为30 pt时,我的应用将4MB图像转换为600 KB图像。

如何减小图像尺寸(600 KB到250 KB或更小)?

考虑到我的应用程序是使用WPF,C#和.NET 4编写的,我应该使用哪个库或代码示例?

1 个答案:

答案 0 :(得分:0)

有两种缩小图像尺寸的方法:降低分辨率或使用您正在使用的格式的压缩参数(即,jpeg压缩基于余弦变换,使您能够控制最终图像的质量(和尺寸))。 / p>

我使用了BitmapSource扩展方法来控制我保存的Jpeg图像的质量。也许你会发现它很有用:

    public static void SaveBitmapSourceAsJpeg(this BitmapSource image, string fileName, int quality)
    {
        using (var fileStream = new FileStream(fileName, FileMode.Create))
        {
            var encoder = new JpegBitmapEncoder();
            encoder.Frames.Add(BitmapFrame.Create(image));
            encoder.QualityLevel = quality;
            encoder.Save(fileStream);
        }
    }