diff --git a/builder/markdown.go b/builder/markdown.go
index 097ca1ef..45895a97 100644
--- a/builder/markdown.go
+++ b/builder/markdown.go
@@ -345,8 +345,8 @@ func (r ImageRenderer) Render(w markdown.BufWriter, source []byte, node ast.Node
image := node.(*ast.Image)
- sizes := regexp.MustCompile(`^([0-9]+)x([0-9]+)$`).FindSubmatch(image.Title)
- if len(sizes) == 3 {
+ sizes := regexp.MustCompile(`^([0-9]+)x([0-9]+)( CC-BY)?$`).FindSubmatch(image.Title)
+ if len(sizes) >= 3 {
_, err := fmt.Fprintf(
w,
``,
@@ -355,6 +355,28 @@ func (r ImageRenderer) Render(w markdown.BufWriter, source []byte, node ast.Node
sizes[1],
sizes[2],
)
+ if err != nil {
+ return ast.WalkStop, err
+ }
+
+ if len(sizes) >= 4 && string(sizes[3]) == " CC-BY" {
+ _, err = fmt.Fprintf(w, `
+
+ `, image.Destination)
+ }
return ast.WalkSkipChildren, err
} else {
diff --git a/pages/blog/2024/01/blanktar-renewal.md b/pages/blog/2024/01/blanktar-renewal.md
index 79f0f972..c2b86fcc 100644
--- a/pages/blog/2024/01/blanktar-renewal.md
+++ b/pages/blog/2024/01/blanktar-renewal.md
@@ -83,7 +83,7 @@ Exif情報は[dsprea/go-exif](https://github.com/dsoprea/go-exif)を使って読
ビルド時間の大半は画像の生成が占めていたので、一度生成した画像はキャッシュするようにしました。
-![画像ビルドの流れ。キャッシュディレクトリにキャッシュがあればそれをコピーして使用日時を更新する。キャッシュが見つからなければ新たに生成して、キャッシュディレクトリと出力先ディレクトリの両方に保存する。最後にしばらく使っていないキャッシュを消して終了。](/blog/2024/01/blanktar-renewal/image-building-flow.svg "601x689")
+![画像ビルドの流れ。キャッシュディレクトリにキャッシュがあればそれをコピーして使用日時を更新する。キャッシュが見つからなければ新たに生成して、キャッシュディレクトリと出力先ディレクトリの両方に保存する。最後にしばらく使っていないキャッシュを消して終了。](/blog/2024/01/blanktar-renewal/image-building-flow.svg "601x689 CC-BY")