【发布时间】:2012-03-30 13:47:26
【问题描述】:
ReportLab/xhtml2pdf 在 HTML 中以这种样式位崩溃时一直运行良好:
<p style="border-style: initial; border-color: initial; border-image: initial;
font-family: Ubuntu-R; font-size: small; border-width: 0px; padding: 0px;
margin: 0px;">Done:</p>
出现此错误:
File "/usr/local/lib/python2.7/dist-packages/reportlab/lib/colors.py",
line 850, in __call__
raise ValueError('Invalid color value %r' % arg)
ValueError: Invalid color value 'initial'
我通常这样使用它:
pdf = pisa.pisaDocument(StringIO.StringIO(html.encode('UTF-8')),
result, encoding='UTF-8', link_callback=fetch_resources)
除了修补它的原始代码之外,还有其他方法可以解决这个问题吗?
【问题讨论】:
-
奇怪的是,我的 windows 盒子上的相同版本不会崩溃并生成 pdf。所以:Windows7x64 - 一切都好,fedora - 不走运。
-
我修补了 reportLab 颜色的东西,如果默认值为 null,则返回黑色的默认值 - 这暂时解决了问题,但我正在寻找更好的选择。
标签: python reportlab xhtml2pdf