Я использую pdfkit для создания PDF-документа со страницы HTML. Проблема заключается в том, что он использует разные шрифты на моей машине разработки (OS X) и производственном сервере (Ubuntu), поэтому я не могу получить последовательный рендеринг в среде разработки и производства.pdfkit использует разные шрифты при рендеринге документа PDF на OS X и Ubuntu
Посмотрите на эти скриншоты:
PDF сгенерированных на Ubuntu:
PDF имеет различные шрифты но когда я открываю HTML-версию в браузере, он делает то же самое, когда размещается на U buntu и OS X локально и использует тот же шрифт, что и локальный (OS X), сгенерированный PDF.
Вот код, который я использую для генерации HTML и PDF-версии (это Django).
t = loader.get_template(self.template_name)
c = RequestContext(request, context)
html = t.render(c)
if format == "html":
return HttpResponse(html, content_type="text/html")
elif format == "pdf":
options = {
'quiet': ''
}
pdf = pdfkit.from_string(smart_unicode(html), False, options=options)
response = HttpResponse(pdf, content_type='application/pdf')
response['Content-Disposition'] = '{0}; filename=Order Sheet.pdf'\
.format(self.get_disposition())
return response
else:
return HttpResponse("Unknown format", content_type="text/html")
и это определение CSS шрифта
body {
font-family: sans-serif;
font-size: 13px;
font-weight: normal;
}
Я попытался Arial
, а также.
Почему pdfkit (wkhtmltopdf) использует разные шрифты на Ubuntu и как заставить его использовать шрифт, который я хочу?
Да, я думал, что Arial является основным шрифтом и доступен везде, но оказывается, что он недоступен на Ubuntu. Поэтому я устанавливаю arial на ununtu, и все в порядке. –