Php 什么';It’imagick::INTERLACE\u JPEG/INTERLACE\u PLANE/INTERLACE\u LINE之间的实际区别是什么?

Php 什么';It’imagick::INTERLACE\u JPEG/INTERLACE\u PLANE/INTERLACE\u LINE之间的实际区别是什么?,php,imagemagick,imagick,Php,Imagemagick,Imagick,ImageMagick中有许多“交错”选项,但我并不真正理解其中的区别。标题中的所有选项似乎都生成了一个类似的JPG文件——也许如果我有一个较慢/受限的连接,我可以看出其中的差别 有实际的区别吗?应该选择一个而不是另一个吗 谢谢,没什么区别。以下是ImageMagick的jpeg中的相关代码 编码器: 也就是说,如果支持渐进式JPEG,而interlace不是NoInterlace,则无论您请求什么样的交错样式,它都会编写渐进式JPEG。正如您在引用代码的第二行中所看到的,您还可以使用“PJPE

ImageMagick中有许多“交错”选项,但我并不真正理解其中的区别。标题中的所有选项似乎都生成了一个类似的JPG文件——也许如果我有一个较慢/受限的连接,我可以看出其中的差别

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


谢谢,没什么区别。以下是ImageMagick的jpeg中的相关代码 编码器:

也就是说,如果支持渐进式JPEG,而interlace不是NoInterlace,则无论您请求什么样的交错样式,它都会编写渐进式JPEG。正如您在引用代码的第二行中所看到的,您还可以使用“PJPEG”扩展名或“PJPEG”格式请求渐进式输出

#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