跳转到内容
搜索文档

限制和格式

最后更新 查看 MarkdownAgent 设置

本节介绍 Images 的限制和支持格式。


限制

使用 Images 进行优化时,请注意以下限制。

在 Enterprise 计划中,您可以联系我们的账户团队,确保限制符合您的需求。

远程图像

以下限制适用于转换存储在 Images 之外的远程图像:

属性 限制
图像文件大小 100 MB
图像面积(不包括动画 GIF) 100 MP(例如 10,000x10,000 像素)
动画 GIF 的图像面积 100 MP*
图像尺寸(不包括 WebP 和 AVIF) 12,000 像素
图像尺寸,AVIF 1,200 像素

托管图像

以下限制适用于上传到 Images 存储:

属性 限制
图像文件大小 10 MB
图像面积(不包括动画 GIF) 100 MP(例如 10,000x10,000 像素)
图像面积,动画 GIF 100 MP*
图像尺寸(不包括 WebP 和 AVIF) 12,000 像素
图像尺寸,AVIF 1,200 像素
图像元数据 1024 字节

动画图像的限制

GIF/WebP 动画限制为所有帧的总兆像素,或所有帧面积之和。例如,尺寸为 500x500、共 10 帧的 GIF 图像面积为 2,500,000 像素或 2.5 兆像素。

交付动画 GIF/WebP 动画的限制为 100 兆像素。但是,超过 50 兆像素的动画将在不应用任何转换的情况下交付。

提供动画时,我们建议使用 MP4 和 WebM 等视频格式以获得最佳性能。由于 GIF 格式的压缩效率较低,高分辨率动画通常文件较大,压缩时间更长。

要优化远程视频,您可以使用媒体转换

Images 绑定的限制

使用 Images 绑定 进行优化时,.input() 的最大输入大小为 20 MB。

支持的格式

输入格式

Images 支持多种输入格式,适用于远程和托管图像:

  • PNG
  • JPEG
  • GIF(包括动画)
  • WebP(包括动画)
  • SVG
  • AVIF*
  • HEIC

*适用于 Enterprise 计划。

输出格式

您可以使用以下输出格式提供图像:

  • PNG
  • JPEG
  • GIF(包括动画)
  • WebP(包括动画)
  • SVG
  • AVIF

在检测请求浏览器的最优输出格式时,Cloudflare 会平衡生成图像的时间与向浏览器提供图像的时间。

特别是,AVIF 编码可能比编码为其他格式慢一个数量级。如果图像太大而无法快速编码为 AVIF,则 Cloudflare 将回退到 WebP 或 JPEG。

渐进式 JPEG

转码为 JPEG 时,Cloudflare 以交错渐进式 JPEG 格式生成图像。

您可以使用 format 参数指定应使用渐进式还是基线 JPEG。

但是,在以下任一情况下,我们始终会回退到基线 JPEG 格式——即使指定了渐进式 JPEG:

  • 输出图像面积尺寸小于 50x50。
  • 输出图像面积尺寸大于 3000x3000。

SVG

Cloudflare 不会调整 SVG 文件大小,并将忽略任何优化参数。

如果您存储在 Images 中,则可以使用任何预定义变体作为占位符来交付经过净化的 SVG。例如,应用默认 public 变体允许交付 SVG 而无需调整大小或裁剪:

imagedelivery.net/account_hash/svg_id/public

同样,您可以使用 Images 提供存储在您自己的源站(例如 R2)中的经过净化的 SVG。

提供 SVG 文件时,会使用 svg-hush 进行净化,这是 Cloudflare 开发的开源工具,使 SVG 尽可能安全。它以流式方式处理文件而不缓冲,使我们能够即时快速过滤。SVG 文件是 XML 文档,可能包含链接或 JavaScript 功能,可能带来安全隐患。

svg-hush 工具过滤 SVG 并移除潜在风险功能,例如:

  • 脚本。 我们防止 SVG 被用于跨站脚本攻击。虽然浏览器不允许在 <img> 标签中使用脚本,但在 SVG 作为顶级文档直接打开时允许脚本。
  • 指向其他文档的超链接。 移除超链接使 SVG 文件对 SEO 垃圾邮件和网络钓鱼的吸引力降低。
  • 跨源资源引用。 我们阻止第三方 跟踪谁在查看图像。

这篇文档对您有帮助吗?