相关疑难解决方法(0)

C#:寻求PNG压缩算法/库

我需要压缩或至少降低用户上传到我网站的某些png图像的质量.我已经调整了它的大小,但这对图像大小没有太大作用.

寻求.net 4.0或更低版本的png /图像压缩或质量损失算法或库.


这就是我目前保存/转换图像的方式:

Image mainImg = ImageHelper.ResizeImage(bmp, 600, 500, false);
mainImg.Save(filePath, System.Drawing.Imaging.ImageFormat.Png);
Run Code Online (Sandbox Code Playgroud)

.net c# algorithm png

15
推荐指数
2
解决办法
1万
查看次数

PDF使用iTextSharp进行压缩

我目前正在尝试重新压缩已经创建的pdf,我试图找到一种方法来重新压缩文档中的图像,以减小文件大小.

我一直在尝试使用DataLogics PDE和iTextSharp库来执行此操作,但我找不到对项目进行流重新压缩的方法.

我有关于循环xobjects并获取图像,然后将DPI降低到96或使用libjpeg C#implimentation来改变图像的质量但是将其恢复到pdf流似乎总是最终,内存损坏或其他一些问题.

任何样品将不胜感激.

谢谢

c# pdf itext

9
推荐指数
3
解决办法
3万
查看次数

什么影响C#PNG无损压缩率?

Bitmap clip = new Bitmap((int)(8.5 * 72), (int)(11 * 72));
MemoryStream stream = new MemoryStream();
clip.Save(stream, System.Drawing.Imaging.ImageFormat.Png);
byte[] bytes = stream.ToArray();
Run Code Online (Sandbox Code Playgroud)

我跑了它在我的机器上,并且bytes.Length8587,我的同事开发的机器是2009.据说,.NET没有办法影响PNG压缩的质量(或者说这种情况下的比率).这个特殊的图像是空白的,我还有其他测试与内容图像一起工作,他们确认压缩是无损的(我遇到了一些争论,这是一个问题).

但即使压缩是无损的,压缩算法运行时间+ CPU利用率与压缩率/质量之间也需要权衡.我想知道如何System.Drawing.Imaging确定质量,因为上述情况清楚地表明可能存在差异.我怎么能确定在客户的机器上它不会选择100%的质量(这将产生1.457.337大小的文件)?

相关材料:

附加信息:

  • 检查了另一个开发人员的机器,它与我的其他同事的结果一致,所以我的机器是异常值.
  • 每台机器都安装了Win 7 Prof 64位,特定的测试是NUnit,我们使用的是.NET 4
  • 在这方面,我安装的任何软件都可以覆盖.NET的行为.例如我安装了IrfanView,它可以替换任何系统范围的"过滤器"或使用的dll吗?(顺便说一下,我查看了模块调试视图,我没有看到任何异常的dll加载)
  • 它可以受到某些Windows操作系统桌面质量设置的影响吗?

c# png image-compression image-quality

2
推荐指数
1
解决办法
2287
查看次数

标签 统计

c# ×3

png ×2

.net ×1

algorithm ×1

image-compression ×1

image-quality ×1

itext ×1

pdf ×1