xhtml2pdf可以很好地在appengine上生成一个简单的PDF。在
但是现在我需要在生成的PDF中添加一个自定义字体,我似乎找不到一个简单的解决方案来实现这一点。在
我将此CSS添加到HTML中以转换为PDF:
@font-face {
font-family: OpenSans;
src: url("http://mydomain/fonts/Open-Sans-regular.ttf");
}
body {
font-family: OpenSans;
}
从而产生以下错误:
^{pr2}$GAE不支持tempfile
,因此我尝试在GCS中创建一个临时文件来替换{
self.tmp_file = gcs.open('/gcs_bucket_temp/temp_file',
'w',
retry_params=gcs.RetryParams(backoff_factor=1.1))
但是这会造成一些难以修复的破坏性更改:xhtml2pdf对ttfonts.py
中的tempfile进行了大量的读取访问(例如。ttfonts.py:321unpack('>L',self._ttf_data[self._pos - 4:self._pos])[0]
),这似乎很难迁移到使用GCS文件。在
有没有人能够在appengine上使用xhtml2pdf生成pdf,并使用自定义字体?在
下面是我对xhtml2pdf库所做的更改,以便在appengine上允许自定义@font-face支持。基本上是使用GCS来存储tempfile而不是文件系统。在
在
ttfonts.py:239
中,替换:签署人:
^{pr2}$在
util.py:608
中,替换:签署人:
这似乎起到了作用。自定义字体现在在生成的PDF中显示良好。在
相关问题 更多 >
编程相关推荐