我正在构建一个批处理器,以将.tif图像目录保存为.jpgs。处理工作正常。但是,渲染的jpgs对它们有蓝色色调。它们不是“蓝色”,因为它们具有较冷的色调,蓝色色调。原件更明亮,颜色更暖。这就是我创建调整大小的jpeg的方式:
Bitmap bitmap = new Bitmap(image.Image, size);
Graphics graphics = Graphics.FromImage(bitmap);
graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
graphics.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.None;
graphics.DrawImage(image.Image, 0, 0, size.Width, size.Height);
// Get EncoderInfo("image/jpeg") gets the jpeg Codec by mime type
bitmap.Save(path, GetEncoderInfo("image/jpeg"), EncoderParameters);
原始tif图像大小为7MB - 与渲染的jpeg相比较大。也许这与它有关。不确定。
我在Googles上空了。有没有人对此有任何经验或有关下一步尝试的建议?谢谢!
答案 0 :(得分:0)
我首先建议进行测试:
答案 1 :(得分:0)
原始文件可能具有颜色配置文件。在这种情况下,您还需要将该信息复制到新文件中。我不知道如何用.NET的成像类做到这一点。
答案 2 :(得分:0)
从MSDN文档中,看起来你可以做得更简单一些(假设image.Image是一个实际的System.Drawing.Image实例):
image.Image.Save(path, System.Drawing.ImageFormat.Jpeg)
这可能有所帮助 - 看起来你正在使用你的TIF,转换为位图,然后转换为JPG。