gpt4 book ai didi

php - imagick::INTERLACE_JPEG/INTERLACE_PLANE/INTERLACE_LINE 之间的实际区别是什么?

转载 作者:行者123 更新时间:2023-12-05 00:19:13 24 4
gpt4 key购买 nike

ImageMagick 中有许多“隔行扫描”选项,但我不太明白其中的区别。标题中的所有选项似乎都生成了一个类似的 JPG 文件——也许如果我的连接速度较慢/节流,我可以辨别出差异。

有什么实际区别吗?应该选择一个而不是另一个吗?

谢谢

最佳答案

没有区别。这是ImageMagick的jpeg中的相关代码
编码器:

#if (JPEG_LIB_VERSION >= 61) && defined(C_PROGRESSIVE_SUPPORTED)
if ((LocaleCompare(image_info->magick,"PJPEG") == 0) ||
(image_info->interlace != NoInterlace))
{
if (image->debug != MagickFalse)
(void) LogMagickEvent(CoderEvent,GetMagickModule(),
"Interlace: progressive");
jpeg_simple_progression(&jpeg_info);
}
else
if (image->debug != MagickFalse)
(void) LogMagickEvent(CoderEvent,GetMagickModule(),
"Interlace: non-progressive");
#else
if (image->debug != MagickFalse)
(void) LogMagickEvent(CoderEvent,GetMagickModule(),
"Interlace: nonprogressive");
#endif

也就是说,如果支持渐进式 JPEG 且隔行扫描不是 NoInterlace,则无论您请求何种类型的隔行扫描,它都会写入渐进式 JPEG。正如您在引用代码的第二行中看到的那样,您还可以使用“PJPEG”扩展名或“PJPEG”格式来请求渐进式输出。

关于php - imagick::INTERLACE_JPEG/INTERLACE_PLANE/INTERLACE_LINE 之间的实际区别是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36424677/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com