2012-03-30 3 views
2

ReportLab/xhtml2pdf не работало отлично до сих пор, когда он выходит из строя в этом бите стиля в HTML:ReportLab ValueError: Недопустимое значение цвета 'начальная'

<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) 

Есть ли способ преодолеть это, кроме исправления его исходного кода?

+0

как ни странно же версии на моем окне коробков не врезаться и генерирует PDF. так: Windows7x64 - все хорошо, fedora - не повезло. – abolotnov

+0

Я поцарапал цветную вещь reportLab, и если значения по умолчанию имеют значение null, просто верните значения по умолчанию для черного - это временно устраняет проблему, но я ищу лучшие варианты. – abolotnov

ответ

2

Неверное значение border-style: initial. См the code в качестве ссылки для поддерживаемых border-style значений:

  • ни
  • скрыты
  • пунктира
  • пунктирной
  • твердого
  • двойного
  • канавка
  • гребня
  • врезка
  • боковика
+0

ОК, но это неправильно, однако, скажем, если браузер разбился, когда вы сталкивались с этим стилем, вы бы не ожидали, что это сработает так, не так ли? Я в значительной степени в одном и том же месте с этим - я не управляю стилем, но мне нужны мои отчеты :) – abolotnov

+1

Браузеры были разработаны для обработки некачественных/неправильных страниц. Модули Python не являются (поскольку это затрудняет обработку ошибок). –

+0

похоже, что я могу устанавливать цвета и стили по умолчанию для создания отчетов. пока не могу понять. – abolotnov

Смежные вопросы