本文整理汇总了Python中utils._process_text函数的典型用法代码示例。如果您正苦于以下问题:Python _process_text函数的具体用法?Python _process_text怎么用?Python _process_text使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了_process_text函数的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _textual
def _textual(self, node):
rc1 = utils._process_text(self, node.text or '')
for n in utils._child_get(node,self):
txt_n = copy.deepcopy(n)
for key in txt_n.attrib.keys():
if key in ('rml_except', 'rml_loop', 'rml_tag'):
del txt_n.attrib[key]
if not n.tag == 'bullet':
txt_n.text = utils.xml2str(self._textual(n))
txt_n.tail = n.tail and utils.xml2str(utils._process_text(self, n.tail.replace('\n',''))) or ''
rc1 += etree.tostring(txt_n)
return rc1
示例2: _textual
def _textual(self, node):
rc1 = utils._process_text(self, node.text or "")
for n in utils._child_get(node, self):
txt_n = copy.deepcopy(n)
for key in txt_n.attrib.keys():
if key in ("rml_except", "rml_loop", "rml_tag"):
del txt_n.attrib[key]
if not n.tag == "bullet":
if n.tag == "pageNumber":
txt_n.text = self.canvas and str(self.canvas.getPageNumber()) or ""
else:
txt_n.text = utils.xml2str(self._textual(n))
txt_n.tail = n.tail and utils.xml2str(utils._process_text(self, n.tail.replace("\n", ""))) or ""
rc1 += etree.tostring(txt_n)
return rc1
示例3: _tag_para
def _tag_para(self, node):
new_node = copy.deepcopy(node)
new_node.tag = 'p'
if new_node.attrib.get('style',False):
new_node.set('class', new_node.get('style'))
new_node.text = utils._process_text(self, node.text)
return etree.tostring(new_node)
示例4: _textual
def _textual(self, node, x=0, y=0):
text = node.text and node.text.encode('utf-8') or ''
rc = utils._process_text(self, text)
for n in node:
if n.tag == 'seq':
from reportlab.lib.sequencer import getSequencer
seq = getSequencer()
rc += str(seq.next(n.get('id')))
if n.tag == 'pageCount':
if x or y:
self.canvas.translate(x,y)
self.canvas.doForm('pageCount%s' % (self.canvas._storyCount,))
if x or y:
self.canvas.translate(-x,-y)
if n.tag == 'pageNumber':
rc += str(self.canvas.getPageNumber())
rc += utils._process_text(self, n.tail)
return rc.replace('\n','')
示例5: __init__
def __init__(self, node, style, localcontext = {}):
self.localcontext = localcontext
coord = [utils.unit_get(x) for x in utils._process_text(self, node.text).split(' ')]
self.ok = False
self.posx = coord[0]
self.posy = coord[1]
self.width = coord[2]-coord[0]
self.ok = coord[1]==coord[3]
self.style = style
self.style = style.get('hr')
示例6: process
def process(node,new_node):
for child in utils._child_get(node,self):
new_child = copy.deepcopy(child)
new_node.append(new_child)
if len(child):
for n in new_child:
new_child.remove(n)
process(child, new_child)
else:
new_child.text = utils._process_text(self, child.text)
new_child.tag = 'p'
try:
if new_child.get('style').find('terp_tblheader')!= -1:
new_node.tag = 'th'
except:
pass
示例7: _flowable
def _flowable(self, node, extra_style=None):
if node.tag=='pto':
return self._pto(node)
if node.tag=='para':
style = self.styles.para_style_get(node)
if extra_style:
style.__dict__.update(extra_style)
result = []
for i in self._textual(node).split('\n'):
result.append(platypus.Paragraph(i, style, **(utils.attr_get(node, [], {'bulletText':'str'}))))
return result
elif node.tag=='barCode':
try:
from reportlab.graphics.barcode import code128
from reportlab.graphics.barcode import code39
from reportlab.graphics.barcode import code93
from reportlab.graphics.barcode import common
from reportlab.graphics.barcode import fourstate
from reportlab.graphics.barcode import usps
from reportlab.graphics.barcode import createBarcodeDrawing
except ImportError:
_logger.warning("Cannot use barcode renderers:", exc_info=True)
return None
args = utils.attr_get(node, [], {'ratio':'float','xdim':'unit','height':'unit','checksum':'int','quiet':'int','width':'unit','stop':'bool','bearers':'int','barWidth':'float','barHeight':'float'})
codes = {
'codabar': lambda x: common.Codabar(x, **args),
'code11': lambda x: common.Code11(x, **args),
'code128': lambda x: code128.Code128(str(x), **args),
'standard39': lambda x: code39.Standard39(str(x), **args),
'standard93': lambda x: code93.Standard93(str(x), **args),
'i2of5': lambda x: common.I2of5(x, **args),
'extended39': lambda x: code39.Extended39(str(x), **args),
'extended93': lambda x: code93.Extended93(str(x), **args),
'msi': lambda x: common.MSI(x, **args),
'fim': lambda x: usps.FIM(x, **args),
'postnet': lambda x: usps.POSTNET(x, **args),
'ean13': lambda x: createBarcodeDrawing('EAN13', value=str(x), **args),
'qrcode': lambda x: createBarcodeDrawing('QR', value=x, **args),
}
code = 'code128'
if node.get('code'):
code = node.get('code').lower()
return codes[code](self._textual(node))
elif node.tag=='name':
self.styles.names[ node.get('id')] = node.get('value')
return None
elif node.tag=='xpre':
style = self.styles.para_style_get(node)
return platypus.XPreformatted(self._textual(node), style, **(utils.attr_get(node, [], {'bulletText':'str','dedent':'int','frags':'int'})))
elif node.tag=='pre':
style = self.styles.para_style_get(node)
return platypus.Preformatted(self._textual(node), style, **(utils.attr_get(node, [], {'bulletText':'str','dedent':'int'})))
elif node.tag=='illustration':
return self._illustration(node)
elif node.tag=='blockTable':
return self._table(node)
elif node.tag=='title':
styles = reportlab.lib.styles.getSampleStyleSheet()
style = styles['Title']
return platypus.Paragraph(self._textual(node), style, **(utils.attr_get(node, [], {'bulletText':'str'})))
elif re.match('^h([1-9]+[0-9]*)$', (node.tag or '')):
styles = reportlab.lib.styles.getSampleStyleSheet()
style = styles['Heading'+str(node.tag[1:])]
return platypus.Paragraph(self._textual(node), style, **(utils.attr_get(node, [], {'bulletText':'str'})))
elif node.tag=='image':
image_data = False
if not node.get('file'):
if node.get('name'):
if node.get('name') in self.doc.images:
_logger.debug("Image %s read ", node.get('name'))
image_data = self.doc.images[node.get('name')].read()
else:
_logger.warning("Image %s not defined", node.get('name'))
return False
else:
import base64
newtext = node.text
if self.localcontext:
newtext = utils._process_text(self, node.text or '')
image_data = base64.decodestring(newtext)
if not image_data:
_logger.debug("No inline image data")
return False
image = StringIO(image_data)
else:
_logger.debug("Image get from file %s", node.get('file'))
image = _open_image(node.get('file'), path=self.doc.path)
return platypus.Image(image, mask=(250,255,250,255,250,255), **(utils.attr_get(node, ['width','height'])))
elif node.tag=='spacer':
if node.get('width'):
width = utils.unit_get(node.get('width'))
else:
width = utils.unit_get('1cm')
length = utils.unit_get(node.get('length'))
return platypus.Spacer(width=width, height=length)
elif node.tag=='section':
return self.render(node)
elif node.tag == 'pageNumberReset':
return PageReset()
#.........这里部分代码省略.........
示例8: rec_render_cnodes
def rec_render_cnodes(self,node):
self.tb.appendtxt(utils._process_text(self, node.text or ''))
for n in utils._child_get(node,self):
self.rec_render(n)
self.tb.appendtxt(utils._process_text(self, node.tail or ''))
示例9: _flowable
#.........这里部分代码省略.........
"qrcode": lambda x: createBarcodeDrawing("QR", value=x, **args),
}
code = "code128"
if node.get("code"):
code = node.get("code").lower()
return codes[code](self._textual(node))
elif node.tag == "name":
self.styles.names[node.get("id")] = node.get("value")
return None
elif node.tag == "xpre":
style = self.styles.para_style_get(node)
return platypus.XPreformatted(
self._textual(node),
style,
**(utils.attr_get(node, [], {"bulletText": "str", "dedent": "int", "frags": "int"}))
)
elif node.tag == "pre":
style = self.styles.para_style_get(node)
return platypus.Preformatted(
self._textual(node), style, **(utils.attr_get(node, [], {"bulletText": "str", "dedent": "int"}))
)
elif node.tag == "illustration":
return self._illustration(node)
elif node.tag == "blockTable":
return self._table(node)
elif node.tag == "title":
styles = reportlab.lib.styles.getSampleStyleSheet()
style = styles["Title"]
return platypus.Paragraph(self._textual(node), style, **(utils.attr_get(node, [], {"bulletText": "str"})))
elif re.match("^h([1-9]+[0-9]*)$", (node.tag or "")):
styles = reportlab.lib.styles.getSampleStyleSheet()
style = styles["Heading" + str(node.tag[1:])]
return platypus.Paragraph(self._textual(node), style, **(utils.attr_get(node, [], {"bulletText": "str"})))
elif node.tag == "image":
image_data = False
if not node.get("file"):
if node.get("name"):
if node.get("name") in self.doc.images:
_logger.debug("Image %s read ", node.get("name"))
image_data = self.doc.images[node.get("name")].read()
else:
_logger.warning("Image %s not defined", node.get("name"))
return False
else:
import base64
newtext = node.text
if self.localcontext:
newtext = utils._process_text(self, node.text or "")
image_data = base64.decodestring(newtext)
if not image_data:
_logger.debug("No inline image data")
return False
image = StringIO(image_data)
else:
_logger.debug("Image get from file %s", node.get("file"))
image = _open_image(node.get("file"), path=self.doc.path)
return platypus.Image(
image, mask=(250, 255, 250, 255, 250, 255), **(utils.attr_get(node, ["width", "height"]))
)
elif node.tag == "spacer":
if node.get("width"):
width = utils.unit_get(node.get("width"))
else:
width = utils.unit_get("1cm")
length = utils.unit_get(node.get("length"))
return platypus.Spacer(width=width, height=length)
elif node.tag == "section":
return self.render(node)
elif node.tag == "pageNumberReset":
return PageReset()
elif node.tag in ("pageBreak", "nextPage"):
return platypus.PageBreak()
elif node.tag == "condPageBreak":
return platypus.CondPageBreak(**(utils.attr_get(node, ["height"])))
elif node.tag == "setNextTemplate":
return platypus.NextPageTemplate(str(node.get("name")))
elif node.tag == "nextFrame":
return platypus.CondPageBreak(1000) # TODO: change the 1000 !
elif node.tag == "setNextFrame":
from reportlab.platypus.doctemplate import NextFrameFlowable
return NextFrameFlowable(str(node.get("name")))
elif node.tag == "currentFrame":
from reportlab.platypus.doctemplate import CurrentFrameFlowable
return CurrentFrameFlowable(str(node.get("name")))
elif node.tag == "frameEnd":
return EndFrameFlowable()
elif node.tag == "hr":
width_hr = node.get("width") or "100%"
color_hr = node.get("color") or "black"
thickness_hr = node.get("thickness") or 1
lineCap_hr = node.get("lineCap") or "round"
return platypus.flowables.HRFlowable(
width=width_hr, color=color.get(color_hr), thickness=float(thickness_hr), lineCap=str(lineCap_hr)
)
else:
sys.stderr.write("Warning: flowable not yet implemented: %s !\n" % (node.tag,))
return None
示例10: in
elif node.tag=='title':
styles = reportlab.lib.styles.getSampleStyleSheet()
style = styles['Title']
return platypus.Paragraph(self._textual(node), style, **(utils.attr_get(node, [], {'bulletText':'str'})))
elif re.match('^h([1-9]+[0-9]*)$', (node.tag or '')):
styles = reportlab.lib.styles.getSampleStyleSheet()
style = styles['Heading'+str(node.tag[1:])]
return platypus.Paragraph(self._textual(node), style, **(utils.attr_get(node, [], {'bulletText':'str'})))
elif node.tag=='image':
if not node.get('file'):
if node.get('name'):
image_data = self.doc.images[node.get('name')].read()
else:
import base64
if self.localcontext:
newtext = utils._process_text(self, node.text or '')
node.text = newtext
image_data = base64.decodestring(node.text)
if not image_data: return False
image = cStringIO.StringIO(image_data)
return platypus.Image(image, mask=(250,255,250,255,250,255), **(utils.attr_get(node, ['width','height'])))
else:
return platypus.Image(node.get('file'), mask=(250,255,250,255,250,255), **(utils.attr_get(node, ['width','height'])))
from reportlab.lib.utils import ImageReader
name = str(node.get('file'))
img = ImageReader(name)
(sx,sy) = img.getSize()
args = {}
for tag in ('width','height'):
if node.get(tag):
args[tag] = utils.unit_get(node.get(tag))