SuperAPI AI 工具集

image-optimization

前端与建站

查看项目

更新于 10-16 04:06

技能介绍

用途

该技能面向现代 Web 应用的「生产级图片优化」,主要用于优化 Largest Contentful Paint(LCP)、降低页面体积与带宽、实现响应式图片、通过模糊占位符提升感知性能,以及转换为现代图片格式(AVIF、WebP)。

主要能力

  • Next.js Image 组件:介绍 next/image 的静态导入(适合静态资源)与远程图片用法,涉及 priority、placeholder、quality、sizes、fill 等属性。
  • 响应式图片 sizes:为全宽 hero、侧栏图片、卡片网格等场景配置 sizes,按断点提供合适尺寸的图片。
  • 模糊占位符:静态导入可自动获得模糊效果;远程图片需提供 blurDataURL,示例使用 plaiceholder 在构建期生成 base64。
  • 格式选择(AVIF/WebP):通过 next.config.js 的 images.formats 启用 AVIF/WebP,并配置 deviceSizes、imageSizes;非 Next.js 场景可用 <picture> 元素回退。
  • 懒加载模式:默认懒加载(首屏以下),首屏使用 priority 预加载;非 Next.js 场景用原生 loading="lazy"、decoding="async"。
  • 图片 CDN 配置:在 next.config.js 中通过 remotePatterns 配置外部图片域名白名单;示例给出 Cloudinary loader 写法。
  • 艺术指导(Art Direction):通过 useMediaQuery 或 CSS 按断点切换不同图片。
  • SVG 与图标优化:小图标内联、大量图标使用 SVG sprite,大型装饰性 SVG 使用 Image 组件。
  • 性能指标影响:以表格形式列出 AVIF 格式、响应式 sizes、模糊占位符、priority 加载、懒加载对 LCP、CLS 与带宽的影响。
  • 反模式清单:列出缺少 width/height、全部 eager 加载、LCP 图片未设 priority、照片使用 PNG、单一图片尺寸等常见问题及解决方案。
  • 构建期优化:给出 sharp(Next.js 自动安装)与 Squoosh CLI 的批量优化命令。

使用方式

技能以代码模式与配置片段呈现,核心示例包括:静态导入 hero 图片并设置 priority、placeholder="blur"、sizes="100vw";远程图片配合显式尺寸与 sizes;产品卡片响应式 sizes;next.config.js 中启用 AVIF/WebP 与 remotePatterns;Cloudinary 自定义 loader;以及构建期生成 blurDataURL 与批量格式转换命令。

适用场景

适用于需要改善图片性能的 Next.js(含 Next.js 16 Image)项目,尤其是关注 LCP、CLS 与带宽的场景,如首屏 hero 图、产品卡片网格、侧栏图片、多断点响应式布局与 CDN 图片分发。

限制

技能未提供具体的收费、价格或商业条款信息;除文中提及的 AVIF/WebP 体积缩减等表述外,未给出独立基准测试或部署平台要求。相关参考资料路径包括 references/cdn-setup.md、scripts/image-component.tsx、checklists/image-checklist.md、examples/image-examples.md。