运行wkhtmltopdf(qt)为无人时出现ATSFontGetFileReference错误

时间:2013-02-12 08:27:58

标签: php qt fonts wkhtmltopdf

我正在使用基于Qt的wkhtmltopdf来生成本地网页的PDF版本。到目前为止,当我直接从命令行运行它时,它完全符合我的需要。例如,这有效:

wkhtmltopdf http://localhost/~acobster/foo/?render=1 ~/Desktop/foo.pdf

但是,当我尝试从PHP脚本调用它时,它会失败。这似乎与运行nobody有关,因为

sudo -u nobody wkhtmltopdf http://localhost/~acobster/foo/?render=1 ~/Desktop/foo.pdf

导致它吐出这个错误大约一百次:

  

wkhtmltopdf [45642]:ATSFontGetFileReference失败:错误   -120。 Qt:internal:-108:错误ATSUMeasureTextImage text / qfontengine_mac.mm:1136

我相信它抱怨无法呈现字体“Palatino”,我在页面中的CSS字体系列规则中指定了该字体。但即使我用“时代”取代帕拉蒂诺并再次作为无人再次奔跑,我也明白了:

QPainter::begin(): Returned false

为什么我能够将此字体作为常规用户处理,而不是nobody? Qt有什么与该用户不能很好地搭配的吗?

0 个答案:

没有答案