HUGO
Menu
GitHub 87548 stars Mastodon

Hugo 配置图像处理

Hugo 配置图像处理。

处理选项

这些是处理图像的默认设置:

imaging:
  anchor: Smart
  bgColor: '#ffffff'
  compression: lossy
  quality: 75
  resampleFilter: box
[imaging]
  anchor = 'Smart'
  bgColor = '#ffffff'
  compression = 'lossy'
  quality = 75
  resampleFilter = 'box'
{
   "imaging": {
      "anchor": "Smart",
      "bgColor": "#ffffff",
      "compression": "lossy",
      "quality": 75,
      "resampleFilter": "box"
   }
}
anchor
(string) 裁剪或填充图像时使用的焦点。有效选项包括 TopLeftTopTopRightLeftCenterRightBottomLeftBottomBottomRightSmartSmart 选项使用 smartcrop.js 库识别图像中最有趣的区域。默认值是 Smart
bgColor
(string) 将透明图像转换为不支持透明的格式(如 PNG 到 JPEG)时使用的背景色。当旋转非正交角度的图像时,如果空间不透明且处理规范中未指定背景色,此颜色也会填充空白空间。值必须是 RGB 十六进制颜色。默认值是 #ffffff
compression
New in v0.153.5
(string) 图像使用的编码策略。选项是 lossylossless。请注意,lossless 仅由 WebP 格式支持。默认值是 lossy
quality
(int) 图像的视觉保真度,适用于使用 lossy 压缩时的 JPEG 和 WebP 格式。表示为 1100(含)之间的整数。较低的数字优先考虑较小的文件大小,而较高的数字优先考虑视觉清晰度。默认值是 75
resampleFilter
(string) 调整大小、适配或填充图像时计算新像素使用的算法。常见选项包括 boxlanczoscatmullRommitchellNetravalilinearnearestNeighbor。默认值是 box
过滤器 描述
box 简单快速的平均过滤器,适用于缩小
lanczos 高质量重采样过滤器,适用于摄影图像,产生锐利的结果
catmullRom 锐利的立方过滤器,比 Lanczos 过滤器更快,同时提供类似的结果
mitchellNetravali 立方过滤器,产生比 CatmullRom 更平滑的结果,振铃伪影更少
linear 双线性重采样过滤器,产生平滑的输出,比立方过滤器更快
nearestNeighbor 最快的重采样过滤器,无抗锯齿

请参阅 源文档 获取可用重采样过滤器的完整列表。如果您希望以提高性能为代价提高图像质量,可以尝试使用替代过滤器。

WebP 图像

New in v0.155.0

这些是特定于处理 WebP 图像的默认设置:

imaging:
  webp:
    hint: photo
    method: 4
    useSharpYuv: true
[imaging]
  [imaging.webp]
    hint = 'photo'
    method = 4
    useSharpYuv = true
{
   "imaging": {
      "webp": {
         "hint": "photo",
         "method": 4,
         "useSharpYuv": true
      }
   }
}
hint
(string) 处理 WebP 图像时使用的编码预设,相当于 cwebp CLI 的 -preset 标志。有效选项包括 drawingiconphotopicturetext。默认值是 photo
示例
drawing 具有高对比度细节的手绘或线条画
icon 小型彩色图像
photo 自然光下的户外照片
picture 室内照片,如肖像
text 主要是文本的图像
method
(int) 压缩算法的努力程度。表示为 06(含)之间的整数,相当于 cwebp CLI 的 -m 标志。较低的数字优先考虑处理速度,而较高的数字优先考虑压缩效率。默认值是 4
useSharpYuv
(bool) 用于 RGB 到 YUV 编码的转换方法,相当于 cwebp CLI 的 -sharp_yuv 标志。启用此选项会优先图像清晰度,以降低处理速度为代价。默认值是 true

Exif 方法

这些是图像 Resource 对象上 Exif 方法的默认设置:

imaging:
  exif:
    disableDate: false
    disableLatLong: false
    excludeFields: ''
    includeFields: ''
[imaging]
  [imaging.exif]
    disableDate = false
    disableLatLong = false
    excludeFields = ''
    includeFields = ''
{
   "imaging": {
      "exif": {
         "disableDate": false,
         "disableLatLong": false,
         "excludeFields": "",
         "includeFields": ""
      }
   }
}
disableDate
(bool) 是否通过返回零值禁用 Date 方法。默认值是 false
disableLatLong
(bool) 是否通过返回零值禁用 LatLong 方法。默认值是 false
excludeFields
(string) 提取元数据时要排除的字段的 正则表达式

默认情况下,为了提高性能并减少缓存大小,Hugo 排除以下字段:ColorSpaceContrastExifExposureBiasExposureModeExposureProgramFlashGPSJPEGMeteringResolutionSaturationSensingSharpWhiteBalance

includeFields
(string) 提取元数据时要包含的字段的 正则表达式。如果为空,则使用排除技术元数据的默认集。设置为 '.*' 以包含所有字段。

Meta 方法

New in v0.155.0

这些是图像 Resource 对象上 Meta 方法的默认设置:

imaging:
  meta:
    fields: []
    sources:
    - exif
    - iptc
[imaging]
  [imaging.meta]
    fields = []
    sources = ['exif', 'iptc']
{
   "imaging": {
      "meta": {
         "fields": [],
         "sources": [
            "exif",
            "iptc"
         ]
      }
   }
}
fields
([]string) 提取元数据时要包含的字段的 glob 切片。如果为空,则使用排除技术元数据的默认集。设置为 ['**'] 以包含所有字段。

默认情况下,为了提高性能并减少缓存大小,Hugo 排除以下字段:ColorSpaceContrastExifExposureBiasExposureModeExposureProgramFlashGPSJPEGMeteringResolutionSaturationSensingSharpWhiteBalance

sources
([]string) 要包含的元数据源,exifiptcxmp 中的一个或多个。默认值是 ['exif', 'iptc']。XMP 元数据默认被排除以提高性能。

Last updated: January 1, 0001
Improve this page