diff --git a/scripts/hotdoc-html-2-pdf b/scripts/hotdoc-html-2-pdf
index cc13636482f67e955889e7cb53a46902bf458419..98196e8581877dcf517c37156c725ef4457926f1 100755
--- a/scripts/hotdoc-html-2-pdf
+++ b/scripts/hotdoc-html-2-pdf
@@ -71,7 +71,7 @@ def update_local_links(elem, prefix):
 
         link.attrib['href'] = '%s/%s' % (prefix, href)
 
-def convert_svg_images(elem):
+def convert_images(elem, imgdir):
     imgs = elem.xpath('.//img')
     for img in imgs:
         src = img.attrib.get('src')
@@ -85,13 +85,14 @@ def convert_svg_images(elem):
         if not url_components.path:
             continue  # Local url, but doesn't need updating (eg #my-anchor)
 
-        if not url_components.path.endswith('.svg'):
-            continue
+        src = 'static' + os.path.abspath(src)
+        converted = src
 
-        converted = os.path.abspath(src) + '.pdf'
-        cmd = ['/usr/bin/rsvg-convert', src, '-f', 'pdf', '-o', converted]
+        if url_components.path.endswith('.svg'):
+            converted = imgdir + "/" + os.path.basename(src) + '.pdf'
+            cmd = ['/usr/bin/rsvg-convert', src, '-f', 'pdf', '-o', converted]
 
-        subprocess.check_call(cmd)
+            subprocess.check_call(cmd)
 
         img.attrib['src'] = converted
 
@@ -112,7 +113,9 @@ def transform(args):
     if args.remote_prefix:
         update_local_links(body, args.remote_prefix)
 
-    convert_svg_images(body)
+    inpath = os.path.dirname(args.input)
+    tmpdir_path = tempfile.mkdtemp(prefix=os.path.join(inpath, ''))
+    convert_images(body, tmpdir_path)
 
     output.append('<!DOCTYPE html>')
     output.append('<html lang="en">')