Je n'ai pas réussi à faire apparaître les images malgré toutes les solutions que j'ai pu trouver sur Google. Mais cette astuce a fonctionné pour moi, car la version en ligne de commande de pisa affiche les images sans problème :
from tempfile import mkstemp
# write html to a temporary file
# can used NamedTemporaryFile if using python 2.6+
fid, fname = mkstemp(dir='/tmp')
f = open(fname, 'w+b')
f.write(html)
f.close()
# now create pdf from the html
cmd = 'xhtml2pdf "%s"' % fname
os.system(cmd)
os.unlink(fname)
# get the content of the pdf
filename = fname+'.pdf'
pdf = open(filename, 'r')
content = pdf.read()
pdf.close()
os.unlink(pdf.name)
# return content
response = HttpResponse(content, mimetype='application/pdf')
response['Content-Disposition'] = 'attachment; filename=draft.pdf'
Cela fonctionnait lorsque les images avaient soit une url, soit le nom complet du chemin, par exemple.
<img src="/home/django/project/site_media/css/output/images/logo.jpg" />
<img src="http://www.mysite.com/css/output/images/logo.jpg" />
2 votes
Lien mort - c'est ici : 20seven.org/journal/2008/11/11/…