Ошибка Python-PDFkit - QFontEngine: Glyph ни контурный, ни растровый формат - PullRequest
0 голосов
/ 18 апреля 2019

tl; dr: Python-PDFkit генерирует ошибку, когда файл CSS предоставляется во время преобразования HTML в PDF.

Я использую Python-PDFkit (который использует WkHTMLtoPDF на основе Qt), чтобы превратить HTML-файл в PDF-файл. HTML генерируется Jinja2 и содержит изображения base64, текст и пользовательский CSS-файл, похожий на Bootstrap. Преобразование является правильным, если не предоставлен файл CSS:

pdfkit.from_file(file_name + ".html", file_name + ".pdf", options=pdfkit_options)

Но когда я добавляю файлы CSS:

css_files = ["boosted-4.2.2-dist/css/Helvetica.css","boosted-4.2.2-dist/css/Icons.css", "boosted-4.2.2-dist/css/boosted.css"]
pdfkit.from_file(file_name + ".html", file_name + ".pdf", options=pdfkit_options, css=css_files)

Затем PDFkit выдает ошибку WkHTMLtoPDF:

Traceback (most recent call last):
  File "App.py", line 77, in <module>
    report_app.get_reports(client)
  File "App.py", line 69, in get_reports
    self.get_client_server_report(client[0], server[0])
  File "App.py", line 59, in get_client_server_report
    pdfkit.from_file(file_name + ".html", file_name + ".pdf", options=pdfkit_options, css=css_files)
  File "/data/dev/project/ENV/lib/python3.6/site-packages/pdfkit/api.py", line 49, in from_file
    return r.to_pdf(output_path)
  File "/data/dev/project/ENV/lib/python3.6/site-packages/pdfkit/pdfkit.py", line 159, in to_pdf
    raise IOError("wkhtmltopdf exited with non-zero code {0}. error:\n{1}".format(exit_code, stderr))
OSError: wkhtmltopdf exited with non-zero code -8. error:
load glyph failed err=24 face=0x40727c0, glyph=0
QFontEngine: Glyph neither outline nor bitmap format=0
load glyph failed err=24 face=0x40727c0, glyph=3
QFontEngine: Glyph neither outline nor bitmap format=0

Что не так? Любая идея? Я работаю в среде CentOS и Python 3.

...