我的图像压缩有问题。我需要将大量文件(700-900kb)压缩到文件70-80kb而不需要 质量下降。 (或小损失)我在Photoshop中找到了菜单项“Save for Web& Devices ...”。它很棒。 但我不想以编程方式使用photoshop。可能有人知道如何解决这个问题 其他第三方组件或框架?
感谢您的任何想法!
答案 0 :(得分:1)
.NET有许多图像解码/编码库,通常与特定的GUI框架相关联(例如,在Windows窗体中,您有System.Drawing.Image,对于WPF,请参阅msdn上的Imaging Overview章节)。
您还可以在线找到专门从事图像转换/压缩的第三方图书馆(免费和非免费)
通常,压缩图像所节省的数量很大程度上取决于原始格式。如果你已经拥有正常压缩的JPEG照片(质量为85%),那么除了调整它们的大小之外,你可以做的很少。如果您有原始位图(例如BMP,未压缩/低压缩TIFF等),那么大多数压缩格式可以节省大量成本
选择图像格式时,请考虑以下事项:
使用ZIP或RAR等通用压缩算法压缩已压缩的图像(即PNG,JPEG等)实际上不会给您带来任何节省。实际上你可能会得到一个更大的文件。
答案 1 :(得分:0)
您可以查看FreeImage项目。它有一个可以使用的C#包装器。
答案 2 :(得分:0)
Imagemagick允许您对文件进行批处理,并提供在处理图像时可能要求的所有内容
E.g。将文件夹中的每个图像(销毁原件)调整为QVGA
mogrify -resize 320x240 *.jpg
保持宽高比吗
mogrify -resize 320x240! *.jpg
如果您需要遍历目录结构,这就是在基于* nix的系统中执行此操作的方法(也会破坏原件)
find . -type f -name *.jpg -exec convert -resize 800x800 {} \;
还有一个质量开关,请参阅here
答案 3 :(得分:0)