【问题标题】:c# Image size increases after saving itc# 保存后图片尺寸变大
【发布时间】:2023-03-13 03:19:01
【问题描述】:

我正在尝试按如下方式保存图像:

var file = Image.FromFile(@"D:\front.png");
file.Save(@"D:\front_save.png");

已保存图像的大小几乎是原始图像的两倍。如何保存图像,使其与原始图像完全相同?

Image Link

【问题讨论】:

  • 这样保存file.save(@"Image\Path", ImageFormat.Png) 有什么不同吗?
  • 不,大小是一样的。
  • 我认为这是因为 Image 类重新编码了图像。
  • 重复的帮助@EugeneBelov 吗?

标签: c# png gdi


【解决方案1】:

不幸的是,.NET 没有公开任何方法来控制作为 PNG 压缩的一部分应用的参数。由于 PNG 是一种无损格式,因此这两个图像是“相同的”,只是存储方式不同。保存原始图像的任何工具都必须使用与默认 .NET PNG 压缩默认值不同的压缩参数,从而优化文件大小。当您从 .NET 保存时,默认压缩参数会导致较大的未优化文件大小。

this 问题的答案列出了一些可用于 PNG 优化的第三方库。如果您不担心丢失信息,可以将图像保存为 jpeg。

【讨论】:

  • 我没有足够的代表来评论原始问题。但我刚刚意识到,只要您不需要访问 C# 中的图像,@mjwills 使用 File.Copy() 的解决方案就可以完全满足您的要求。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-07-25
  • 2015-11-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多