images

images.Filter

返回一个新的图像资源,它是把一个或多个图像滤镜应用到给定图像资源后得到的结果。

签名
images.Filter FILTER... RESOURCE
返回类型
images.ImageResource

images.Filter 函数对一个可处理的图像应用一个或多个图像滤镜后返回一个新的资源。

用法

用 images.Filter 函数应用模糊、锐化、灰度转换等效果。可以传入单个滤镜,也可以传入滤镜切片。传入切片时,Hugo 从左到右依次应用这些滤镜。

应用单个滤镜:

{{ with resources.Get "images/original.jpg" }}
  {{ with images.Filter images.Grayscale . }}
    <img src="{{ .RelPermalink }}" width="{{ .Width }}" height="{{ .Height }}" alt="">
  {{ end }}
{{ end }}

应用两个或更多滤镜,从左到右依次执行:

{{ $filters := slice
  images.Grayscale
  (images.GaussianBlur 8)
}}
{{ with resources.Get "images/original.jpg" }}
  {{ with images.Filter $filters . }}
    <img src="{{ .RelPermalink }}" width="{{ .Width }}" height="{{ .Height }}" alt="">
  {{ end }}
{{ end }}

也可以在 Resource 对象上调用 Filter 方法应用图像滤镜。

示例

{{ with resources.Get "images/original.jpg" }}
  {{ with images.Filter images.Grayscale . }}
    <img src="{{ .RelPermalink }}" width="{{ .Width }}" height="{{ .Height }}" alt="">
  {{ end }}
{{ end }}

英文原文此处用示例照片演示 Grayscale 滤镜的前后对比效果;本站未收录该示例图。

图像滤镜

以下滤镜都可以与 images.Filter 函数配合使用,也可以在 Resource 对象上通过 Filter 方法使用。