Для начала я видел другие темы по этому поводу, и я попробовал почти все, чтобы попытаться это исправить, но ...
При использовании Pisa для рендеринга HTML-страницы в PDF изображения в указанном HTML заметно пропадают. То есть, когда страница отображается в HTML, все просто замечательно, но когда я переключаю вывод в PDF с помощью Pisa, изображения исчезают.
Самое распространенное, что я нашел, это создать функцию обратного вызова для ссылки таким образом:
def fetch_resources(uri, rel):
path = os.path.join(settings.MEDIA_ROOT, uri.replace(settings.MEDIA_URL, ""))
return path
def my_view(request, variable1):
html = render_to_string('template_goes_here.html', dict, context_instance=RequestContext(request))
result = StringIO()
pdf = pisa.pisaDocument(StringIO(html.encode("UTF-8")), dest=result, link_callback=fetch_resources)
if not pdf.err:
return HttpResponse(result.getvalue(), mimetype='application/pdf')
return HttpResponse('Pisa hates you! %s' % cgi.escape(html))
Однако это не работает. PDF подходит, отлично, но изображения отсутствуют.
Я также прочитал предложение в другой ветке о том, как записать HTML-код в mkstemp, преобразовать его в PDF-файл с помощью командной строки, а затем вывести HTML-код, но и безуспешно.
Я даже пытался установить PIL 1.1.16 вместо 1.1.17 из-за кого-то с подобной проблемой - без игры в кости.
Кто-нибудь имеет представление о том, где я иду не так?