gpt4 book ai didi

html - @font-face 自定义字体无法使用 xhtml2pdf for django 正确呈现

转载 作者:太空宇宙 更新时间:2023-11-04 04:45:57 24 4
gpt4 key购买 nike

我在尝试从 HTML 呈现 pdf 时尝试使用自定义字体。

我已经在 HTML 中试过了,字体显示出来了,所以字体的路径必须是正确的,而且它可能被正确使用了。字体类型为 .ttf,根据 http://xhtml2pdf-base.googlecode.com/hg/doc/xhtml2pdf-en.html 上的文档,它应该呈现,但它没有呈现。

这是我的样式标签中的内容:

@font-face {
font-family: "Swiss";
src: url("/static/font/swiss.ttf");
}
body {
font-family: "Swiss";
font-size: 12px;
}

和 html:

<body>
asdf
</body>

我已经尝试了很多东西,去掉了字体 url 和字体系列的引号,我的正文被包裹在 HTML 标签中,所以 html 的格式正确。在网页中呈现时一切都很好,但在转换为 PDF 时无法正确呈现。谁能帮我找出错误?

最佳答案

最好的方法是使用回调来使用文件系统路径获取字体。更准确,而且您不会为每个资源(资源含义、字体、图像等)访问网络服务器

pisa.CreatePDF(html.encode("UTF-8"), file_object , encoding='UTF-8',
link_callback=fetch_resources)

def fetch_resources(uri, rel):
find_file_in_path_using_uri
return path

顺便说一下,我认为你的问题是你还没有完成 collect static,所以字体实际上并不在/static/font/swiss.ttf。我的意思是它们不在 django 之外,而 xhtml2pdf 在 django 之外。我不是 100% 确定。

关于html - @font-face 自定义字体无法使用 xhtml2pdf for django 正确呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14489223/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com