首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vips writeToBuffer不应用图像质量

Vips writeToBuffer不应用图像质量
EN

Stack Overflow用户
提问于 2020-12-25 18:08:12
回答 1查看 106关注 0票数 0

我正在尝试使用libvips的writeToBuffer方法与质量,但它不适用于图像的质量有没有其他方法来设置质量。我有下面的例子,如果文件存在,则调用writeToFile,否则调用writeToBuffer。对于下面的情况,有什么解决方案吗?

代码语言:javascript
复制
$image = Vips\Image::newFromFile($sourceimgfile);
$result = $image->writeToBuffer('.jpg', ['Q' => 50]);
file_put_contents($destinationimgfile, $result);

实际输出:

如果我设置图像质量50,那么它应该给我低分辨率的图像,但它仍然生成与输入图像相同的图像。它没有在图像上应用质量。

EN

回答 1

Stack Overflow用户

发布于 2020-12-25 21:38:34

应该能行得通。您可以在命令行中进行测试,如下所示:

代码语言:javascript
复制
$ vips jpegsave_buffer astronauts.png --Q 20
VIPS_TYPE_BLOB, data = 0x7f5388000b60, length = 55617
$ vips jpegsave_buffer astronauts.png --Q 90
VIPS_TYPE_BLOB, data = 0x7fefbc6f9010, length = 263341

所以在q20,它只有55kb,但是q90是260kb。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65447105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档