我使用 Pisa 从 HTML 生成 pdf 文件:
def fetch_resources(uri, rel):
path = os.path.join(settings.MEDIA_ROOT, uri.replace(settings.MEDIA_URL, ""))
return path
def write_pdf(template_src, context_dict, filename):
template = get_template(template_src)
context = Context(context_dict)
html = template.render(context)
result = open(filename, 'wb')
pdf = pisa.pisaDocument(StringIO.StringIO(
html.encode("UTF-8")), result, link_callback=fetch_resources)
result.close()
我的 HTML 有一个指向外部 CSS 的链接,并且已正确呈现,但 Pisa 不使用该 CSS(例如字体大小、表格单元格宽度、文本对齐...)。
<!DOCTYPE html>
<html lang="fr">
<head>
<link rel="stylesheet" href="/site_media/style/style.css" />
</head>
<body>
....
我错过了什么?
Thanks
你可以尝试这个“Pisa 和 Reportlab 陷阱”我必须添加这个
def fetch_resources(uri, rel):
最重要的是,我仍然在模板中携带所有 CSS。还要确保您正在使用xhtml2pdf而不是旧的 ho.pisa。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)