wkhtmltopdf 的字母间距太大

Pau*_*aul 7 wkhtmltopdf

我正在使用 wkhtmltopdf 将网页下载为 pdf。

但是 css 属性 letter-spacing 似乎不起作用

font-size:20px; letter-spacing:0px;
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

font-size:20px; letter-spacing:1px;
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

1px的间距非常大...

我尝试了 2 种不同的字体系列

Ald*_*und 5

这是一个已知问题。https://github.com/wkhtmltopdf/wkhtmltopdf/issues/1575。没有修复它。只是为了避免使用字母间距


Tej*_*ank 5

给每个面加上字母间距,完美的解决方案就在这里。

import pdfkit
#SnippetBucket.com code for pdfkit
path_wkthmltopdf = r'/var/www/aukcnydom/wkhtmltox/bin/wkhtmltopdf'
config = pdfkit.configuration(wkhtmltopdf=path_wkthmltopdf)
#more better and more accurate code for DPI set
config.default_options = {
        'page_size': 'A4',
        'print_media_type': True,
        'dpi': 96
    }
pdfkit.from_string(mark_safe(unicode(self.document)),settings.MEDIA_ROOT +"/"+ path, options=options, css=style,  configuration=config)
Run Code Online (Sandbox Code Playgroud)

比在CSS中。添加字母间距。

p{letter-spacing: 0.4mm !important; text-align: justify ; font-kerning: normal; text-rendering: optimize-speed;}
/* SNIPPETBUCKET.COM, CSS CODE WITH LETTER SPACING */
Run Code Online (Sandbox Code Playgroud)

这种方式可以简单地解决您的问题并完美地实现字母间距。

注意:我已经给出了示例,您可以对您的代码应用适用的更改。