PHP+Imagick - PNG 压缩

发布于 2024-12-04 23:25:29 字数 537 浏览 1 评论 0原文

如何有效地压缩 PNG?就我而言,图像是具有透明度的小灰度图像。

目前我正在玩这个:

// ...

$im->setImageFormat('png');
$im->setImageColorspace(\Imagick::COLORSPACE_GRAY);
$im->setImageCompression(\Imagick::COMPRESSION_LZW);
$im->setImageCompressionQuality(9);
$im->stripImage();
$im->writeImage($url_t);

由于 Imagick 不提供 COMPRESSION_PNG,我尝试过 LZW,但文件大小几乎没有变化(通常比以前更大)。

如果我在 GIMP 中打开图像并简单地保存它,文件大小会大大减小(例如 11,341 B --> 3,763 B 或 11,057 B --> 3,538)。

使用 Imagick 保存压缩 PNG 的正确方法是什么?

How do I efficiently compress a PNG? In my case, the images are small grayscale images with transparency.

Currently I'm playing with this:

// ...

$im->setImageFormat('png');
$im->setImageColorspace(\Imagick::COLORSPACE_GRAY);
$im->setImageCompression(\Imagick::COMPRESSION_LZW);
$im->setImageCompressionQuality(9);
$im->stripImage();
$im->writeImage($url_t);

As Imagick doesn't offer COMPRESSION_PNG, I've tried LZW but there's almost no change in the filesize (usually it's even bigger than before).

If I open the image in GIMP and simply save it, the filesize gets drastically reduced (e.g. 11,341 B --> 3,763 B or 11,057 B --> 3,538).

What is the correct way of saving a compressed PNG with Imagick?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

厌味 2024-12-11 23:25:29

看看这个答案的第一部分:

它解释了 ImageMagick 的 PNG -quality 设置的含义和语法。

Have a look at the first part of this answer:

It explains the meaning + syntax of ImageMagick's -quality setting for PNGs.

是你 2024-12-11 23:25:29

我绝对不确定保存 PNG 是否是正确的方法,但我的方法是:

$im->setImageCompression(\Imagick::COMPRESSION_UNDEFINED);
$im->setImageCompressionQuality(0);

这为我提供了完美的图像质量和文件大小,与 PS6 保存的“保存为 Web”非常相似。有时尺寸甚至更小!

I'm definitely not sure if it is correct way to save PNG, but my way is:

$im->setImageCompression(\Imagick::COMPRESSION_UNDEFINED);
$im->setImageCompressionQuality(0);

This gives me perfect quality of the image and file size very similar to PS6 saved 'Save for Web'. Sometimes even smaller sizes!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文