images.Text

選項

雖然這些選項都不是必須的,但至少你應該設置 size,使其為圖像高度的一個合理百分比。

color
(string) 字型顏色,可以是 3 位數或 6 位數的十六進制顏色代碼。預設為 #ffffff(白色)。
font
(resource.Resource) 字型可以是 全域資源頁面資源遠端資源。預設為 Go Regular,一種比例的無襯線 TrueType 字型。
linespacing
(int) 每行之間的像素數量。若行高為 1.4,則設置 linespacing 為 0.4 乘以 size。預設為 2
size
(int) 字型大小,單位為像素。預設為 20
x
(int) 相對於圖像左側的水平偏移量,單位為像素。預設為 10
y
(int) 相對於圖像頂部的垂直偏移量,單位為像素。預設為 10

用法

將字型作為資源載入:

{{ $font := "" }}
{{ $path := "https://github.com/google/fonts/raw/main/ofl/lato/Lato-Regular.ttf" }}
{{ with resources.GetRemote $path }}
  {{ with .Err }}
    {{ errorf "%s" . }}
  {{ else }}
    {{ $font = . }}
  {{ end }}
{{ else }}
  {{ errorf "無法取得資源 %q" $path }}
{{ end }}

建立選項映射:

{{ $opts := dict
  "color" "#fbfaf5"
  "font" $font
  "linespacing" 8
  "size" 40
  "x" 25
  "y" 190
}}

設置文字:

{{ $text := "錫安國家公園" }}

創建濾鏡:

{{ $filter := images.Text $text $opts }}

使用 images.Filter 函數應用過濾器:

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

您也可以使用 Resource 物件上的 Filter 方法來應用過濾器:

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

範例

Original

錫安國家公園

Processed

錫安國家公園