diff --git a/bin/report/render/html2html/html2html.py b/bin/report/render/html2html/html2html.py index c65e15342d4..fb1f6fcedd0 100644 --- a/bin/report/render/html2html/html2html.py +++ b/bin/report/render/html2html/html2html.py @@ -26,8 +26,10 @@ import copy import pooler import base64 import cStringIO +import re from reportlab.lib.utils import ImageReader +_regex = re.compile('\[\[(.+?)\]\]') class html2html(object): def __init__(self, html, localcontext): @@ -49,16 +51,17 @@ class html2html(object): process_text(child, new_child) else: if new_child.tag=='img' and new_child.get('name'): - src = utils._process_text(self, new_child.get('name')) - if src : - new_child.set('src','data:image/gif;base64,%s'%src) - output = cStringIO.StringIO(base64.decodestring(src)) - img = ImageReader(output) - (width,height) = img.getSize() - new_child.set('width',str(width)) - new_child.set('height',str(height)) - else : - new_child.getparent().remove(new_child) + if _regex.findall(new_child.get('name')) : + src = utils._process_text(self, new_child.get('name')) + if src : + new_child.set('src','data:image/gif;base64,%s'%src) + output = cStringIO.StringIO(base64.decodestring(src)) + img = ImageReader(output) + (width,height) = img.getSize() + new_child.set('width',str(width)) + new_child.set('height',str(height)) + else : + new_child.getparent().remove(new_child) new_child.text = utils._process_text(self, child.text) self._node = copy.deepcopy(self.etree) for n in self._node: diff --git a/bin/report/render/rml2pdf/trml2pdf.py b/bin/report/render/rml2pdf/trml2pdf.py index 372067be27c..72195280699 100644 --- a/bin/report/render/rml2pdf/trml2pdf.py +++ b/bin/report/render/rml2pdf/trml2pdf.py @@ -610,7 +610,6 @@ class _rml_flowable(object): if self.localcontext: newtext = utils._process_text(self, node.text or '') node.text = newtext - if not node.text: return False image_data = base64.decodestring(node.text) image = cStringIO.StringIO(image_data) return platypus.Image(image, mask=(250,255,250,255,250,255), **(utils.attr_get(node, ['width','height'])))