diff --git a/lib/packages/docutils/rstgen.nim b/lib/packages/docutils/rstgen.nim
index 2ec25cc6e4..9f707f4e81 100644
--- a/lib/packages/docutils/rstgen.nim
+++ b/lib/packages/docutils/rstgen.nim
@@ -848,6 +848,18 @@ proc renderImage(d: PDoc, n: PRstNode, result: var string) =
"""
else:
htmlOut = "
"
+
+ # support for `:target:` links for images:
+ var target = esc(d.target, getFieldValue(n, "target").strip())
+ if target.len > 0:
+ # `htmlOut` needs to be of the following format for link to work for images:
+ #
+ var htmlOutWithLink = ""
+ dispA(d.target, htmlOutWithLink,
+ "$1",
+ "\\href{$2}{$1}", [htmlOut, target])
+ htmlOut = htmlOutWithLink
+
dispA(d.target, result, htmlOut, "\\includegraphics$2{$1}",
[esc(d.target, arg), options])
if len(n) >= 3: renderRstToOut(d, n.sons[2], result)