本文整理汇总了Python中reportlab.platypus.Frame类的典型用法代码示例。如果您正苦于以下问题:Python Frame类的具体用法?Python Frame怎么用?Python Frame使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Frame类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: _header_footer
def _header_footer(canvas, doc):
# Save the state of our canvas so we can draw on it
canvas.saveState()
# canvas.setTitle("Shift export")
styles = getSampleStyleSheet()
styles.add(ParagraphStyle(name='NormalText', fontName='OpenSans-Regular', fontSize=10))
styles.add(ParagraphStyle(name='BottomText', fontName='OpenSans-Regular', fontSize=8))
styles.add(ParagraphStyle(name='Schluessel', alignment=TA_CENTER, fontName='OpenSans-Regular', fontSize=14))
styles.add(ParagraphStyle(name='centered', alignment=TA_CENTER, fontName='OpenSans-Regular'))
# Text that is found on the bottom of (right now..) every page!
canvas.setFillColor(colors.lightgrey)
canvas.rect(200, doc.bottomMargin, 125, 40, fill=True)
frame1 = Frame(200, doc.bottomMargin, 125, 40, showBoundary=1, topPadding=10)
story = [Paragraph('Schlüssel', styles['Schluessel'])]
story_inframe = KeepInFrame(4 * inch, 8 * inch, story)
frame1.addFromList([story_inframe], canvas)
key_text = Paragraph("K Krank<br /><br />U Urlaub", styles['NormalText'])
w, h = key_text.wrap(doc.width, doc.bottomMargin)
key_text.drawOn(canvas, 200 + 125 + 5, doc.bottomMargin + 2.5 )
note_text = Paragraph("* Tragen Sie in diese Spalte eines der folgenden Kürzel ein, wenn es für diesen "
"Kalendertag zutrifft", styles['BottomText'])
w, h = note_text.wrap(doc.width, doc.bottomMargin)
note_text.drawOn(canvas, doc.leftMargin + 5, doc.bottomMargin + 45)
status_text = Paragraph("Stand: 10/2015", styles['BottomText'])
w, h = status_text.wrap(doc.width, doc.bottomMargin)
status_text.drawOn(canvas, doc.width - 5 * mm, doc.bottomMargin)
# Release the canvas
canvas.restoreState()
开发者ID:mimischi,项目名称:django-clock,代码行数:34,代码来源:printing.py
示例2: render
def render(self, canvas, context):
canvas.rect(self.left_margin, self.bottom_margin,
self.box_width, self.box_height,
stroke=1, fill=1)
data = [
('Last name:', context['student']['last_name']),
('Name:', context['student']['first_name']),
('Teacher:', '{} {}'.format(context['teacher']['last_name'],
context['teacher']['first_name'])),
('ID:', context['student']['id']),
('School:', context['school']),
]
t = Table(data, (30 * mm, self.box_width - 32 * mm),
[(self.box_height - 3 * mm) / len(data)] * len(data))
s = TableStyle([
('FONTSIZE', (0, 0), (-1, -1), 8),
('LEFTPADDING', (0, 0), (0, -1), 13),
('BACKGROUND', (0, 0), (-1, -1), colors.white),
])
t.setStyle(s)
f = Frame(self.left_margin, self.bottom_margin,
self.box_width, self.box_height,
leftPadding=1 * mm, rightPadding=1 * mm,
topPadding=2.5 * mm, bottomPadding=0 * mm)
f.addFromList([t], canvas)
开发者ID:GaretJax,项目名称:pdfedit,代码行数:27,代码来源:mark.py
示例3: drawOnePage
def drawOnePage(pdf, records):
# all in inches
margin = 0.25
printable_width = 7.5
each_printable_height = 8.0 / NUM_PER_PAGE
for i, record in enumerate(records):
# see reportlab-userguide.pdf page 62.
story = []
# story.append(Paragraph(str(record['Idea']), heading))
# story.append(Spacer(0,.5*inch))
story.append(Spacer(0,.05*inch))
style = colorizeCategory(record['Type'])
story.append(Paragraph(str(record['Type']), style))
story.append(Spacer(0,.1*inch))
story.append(Paragraph(valFor(record, 'Text'), heading))
#debugging colors i don't want and need to exclude
# story.append(Paragraph(str(style.textColor), italic))
# story.append(Paragraph(valFor(record, 'Bucket'), italic))
# story.append(Paragraph(str(record['Internal / External']), italic))
# story.append(Paragraph(valFor(record, 'JTBD'), italic))
# story.append(Paragraph(valFor(record, 'Total Votes'), smallItalic))
# reportlab are dimensions from bottom left position.
#x, y = the bottom left corner of this part of the page to print on.
x = margin * inch
y = (i * each_printable_height + margin)*inch
f = Frame(x, y + margin*i*inch, printable_width*inch, each_printable_height*inch, showBoundary=1)
f.addFromList(story, pdf)
pdf.showPage()
开发者ID:jawspeak,项目名称:google-docs-spreadsheet-namebadge-printer,代码行数:35,代码来源:csv_to_eng_mgr_game_cards.py
示例4: generer_coupons
def generer_coupons(output_file, coupon):
"""
:param output_file: File
:param coupon: Coupon
:return:
"""
# Styles
styles = StyleSheet()
styles.add_style('normal', fontName='Helvetica', fontSize=14)
styles.add_style('normal-centered', fontName='Helvetica', fontSize=14,
alignment=TA_CENTER)
styles.add_style('normal-bold', fontName='Helvetica-bold', fontSize=14)
styles.add_style('grand', fontName='Helvetica', fontSize=18)
styles.add_style('grand-bold', fontName='Helvetica-bold', fontSize=18)
styles.add_style('petit', fontName='Helvetica', fontSize=12)
styles.add_style('petit-bold', fontName='Helvetica-bold', fontSize=12)
styles.add_style('titre', fontName='Helvetica-Bold', fontSize=15)
styles.add_style('centered', alignment=TA_CENTER)
styles.add_style('remarque', fontName='Helvetica-Oblique', fontSize=11)
styles.add_style('gros-numero', fontName='Helvetica-Bold', fontSize=36)
styles.add_style('right-aligned', alignment=TA_RIGHT)
canvas = Canvas(output_file, pagesize=PAGESIZE)
draw_coupon(canvas, styles, coupon.nom_participant, coupon.noms_invites,
coupon.infos_depart_arrivee.depart_date,
coupon.infos_depart_arrivee.depart_de,
'depart', coupon.nb_personnes)
draw_coupon(canvas, styles, coupon.nom_participant, coupon.noms_invites,
coupon.infos_depart_arrivee.arrivee_date,
coupon.infos_depart_arrivee.arrivee_a,
'arrivee', coupon.nb_personnes)
page_width, page_height = PAGESIZE
frame_height = 10 * cm
frame = Frame(COUPON_MARGIN_SIDE, calc_coupon_y('depart') - frame_height,
page_width - COUPON_MARGIN_SIDE * 2, frame_height)
frame.addFromList([Paragraph(u"""<br/><br/><u>Veuillez noter que les transferts en
navette ne s'effectuent que dans les conditions suivantes:</u><br/><br/>
À votre arrivée, les transferts en navette organisés des aéroports de
Casablanca et de Marrakech sont uniquement à destination du lieu de
l’Assemblée générale, le Palais des Congrès de l'hôtel Mogador Agdal 2.
<br/><b>Ces transferts ne sont disponibles que du 6 au 10 mai 2017.</b>
<br/><br/>
À votre départ, les transferts en navette oganisés à destination des
aéroports de Casablanca et de Marrakech se feront au même point qu'à
l'arrivée à l'hôtel Mogador Agdal 2.<br/>
<b>Ces transferts ne sont disponibles que du 12 au 15 mai 2017.</b>
<br/><br/>
Aucun autre arrêt n'est prévu durant ces trajets.
Si vous ne logez pas au Mogador Agdal 2, vous devez assurer, à vos
frais, votre déplacement entre votre hôtel et le lieu de l’Assemblée
générale.
<br/><br/>
<b>Adresse du Mogador Agdal 2:</b> Zone Touristique Agdal, Route d'Ourika,
Marrakech 40000, Maroc
<br/><br/>
<b>En cas de problème à l'arrivée, veuillez contacter:</b> <br/>Casablanca:
+212 6 89 91 77 19 Marrakech: +212 6 89 91 77 20
""", styles['remarque'])], canvas)
canvas.save()
开发者ID:auf,项目名称:ag2017_auf_org,代码行数:60,代码来源:pdf.py
示例5: make_notice
def make_notice(self, participant, mapping, notice_template,
destination_dir=None):
mapping.update({
'unique_id': participant.unique_id.encode('utf-8'),
})
body = []
styles = getSampleStyleSheet()
styleN = styles['Normal']
styleN.fontName = 'Linux Libertine'
if notice_template is not None:
notice = notice_template.safe_substitute(mapping)
xmldoc = ET.fromstring(notice)
for para in xmldoc.iter('para'):
para_str = ET.tostring(para, encoding="utf-8", method="xml")
body.append(Paragraph(para_str, styleN))
destination_filename = participant.unique_id + ".pdf"
destination = destination_filename
if destination_dir:
destination = os.path.join(destination_dir, destination_filename)
c = canvas.Canvas(destination, pagesize=A4)
c.rect(WINDOW_ORIGIN_X, WINDOW_ORIGIN_Y, WINDOW_WIDTH, WINDOW_HEIGHT)
address_window = c.beginText()
c.setFont('Linux Libertine', 12)
address_window.setFont('Linux Libertine', 12)
address_window.setTextOrigin(WINDOW_ORIGIN_X + 0.5*cm,
WINDOW_ORIGIN_Y + WINDOW_HEIGHT - 0.5*cm)
address_window.textLine(participant.name)
address_window.textLine(participant.address.street_number)
address_window.textLine(participant.address.zip_code)
address_window.textLine(str(participant.address.city))
c.drawText(address_window)
f = Frame(BODY_ORIGIN_X, BODY_ORIGIN_Y, BODY_WIDTH, BODY_HEIGHT,
showBoundary=0)
f.addFromList(body, c)
return c
开发者ID:vinilios,项目名称:hch-roll,代码行数:35,代码来源:make_notices.py
示例6: add_items
def add_items(items, showBoundary=False):
f = Frame(c.x(0), c.y(0), c.width(1), c.height(1),
showBoundary=showBoundary,
leftPadding=0, bottomPadding=0, rightPadding=0, topPadding=0)
f.addFromList(items, canvas)
if items:
raise Exception("Does not fit - items left")
开发者ID:javcasas,项目名称:tienda_ecuador,代码行数:7,代码来源:gen_ride.py
示例7: drawFrame
def drawFrame(self,canvas,func,
x,y,
textWidth,availableHeight,vAlign="TOP"):
story = self.document.makeStory(func, textWidth)
if story is not None:
height = 0
for e in story:
unused,h = e.wrap(textWidth,availableHeight)
height += h
availableHeight -= h
if vAlign == "BOTTOM":
pass
elif vAlign == "MIDDLE":
y -= (height/2)
elif vAlign == "TOP":
y -= height
canvas.saveState()
f = Frame(x,y,
textWidth,height,
leftPadding=0,
rightPadding=0,
bottomPadding=0,
topPadding=0)
#showBoundary=True)
f.addFromList(story,canvas)
canvas.restoreState()
开发者ID:BackupTheBerlios,项目名称:lino-svn,代码行数:28,代码来源:pdf.py
示例8: add_form
def add_form(self, num_rows, form, print_object):
cols = print_object.get_form_field_layout()
field_aliases, field_widths = ['ID'], [5]
field_aliases.extend([c.field.col_alias for c in cols])
field_widths.extend([c.width for c in cols])
field_widths = [n/100.0*self.inner_width for n in field_widths] #normalize
x, y = self.origin_x, self.origin_y + self.qr_size
width = self.inner_width
height = self.inner_height - self.qr_size - 35
data, rowheights, header_flowables = [], [39], []
style = ParagraphStyle(name='Helvetica', fontName='Helvetica', fontSize=10)
for a in field_aliases:
header_flowables.append(Paragraph('<b>%s</b>' % a, style))
data.append(header_flowables)
for n in range(0, num_rows):
data.append(['' for n in field_widths])
rowheights.append(39)
t=Table(data, field_widths, rowheights)
GRID_STYLE = TableStyle([
('GRID', (0,0), (-1,-1), 0.25, colors.black),
('FONT', (0,0), (-1,-1), 'HandSean'),
('BOX',(0,0),(-1,-1),2,colors.black)
])
t.setStyle(GRID_STYLE)
frame = Frame(x, y, width, height, showBoundary=0, leftPadding=0,
bottomPadding=0, rightPadding=0, topPadding=0)
frame.addFromList([t], self.canvas)
开发者ID:LocalGround,项目名称:localground,代码行数:29,代码来源:reports.py
示例9: draw_summary_frame
def draw_summary_frame(canvas, summary, text_color, show_boundary):
"""
Frame mit der Summary des Tickets zeichnen
:param canvas:
:param summary: Summary als Text
:param text_color: Farbe für den Text
:param show_boundary: Rahmen des Frames zeichnen?
:return:
"""
style = ParagraphStyle(name='Normal',
fontName='Helvetica',
fontSize=30,
leading=30,
alignment=TA_CENTER,
textColor=text_color)
frame_width = 390
frame_height = 170
elements = list()
paragraph = Paragraph(html.escape(summary), style)
text_height = paragraph.wrap(frame_width, frame_height)[1]
elements.append(paragraph)
top_padding = (frame_height - text_height) / 2
if top_padding <= 20:
top_padding = 0
frame = Frame(15, 70, frame_width, frame_height,
showBoundary=show_boundary,
topPadding=top_padding)
frame.addFromList(elements, canvas)
开发者ID:NorddeutscherRundfunk,项目名称:jiracards,代码行数:31,代码来源:jiracards.py
示例10: add_form
def add_form(self, num_rows, form, is_mini_form=False):
cols = form.get_fields(print_only=True)
field_aliases, field_widths = ['ID'], [5]
field_aliases.extend([c.col_alias for c in cols])
field_widths.extend([c.display_width for c in cols])
field_widths = [n/100.0*self.inner_width for n in field_widths] #normalize
x, y = self.origin_x, self.origin_y + self.qr_size
width = self.inner_width
height = self.inner_height - self.qr_size - 35
if is_mini_form:
height = Units.pixel_to_point(300) #only render a 300-pixel tall form
data, rowheights, header_flowables = [], [39], []
style = ParagraphStyle(name='Helvetica', fontName='Helvetica', fontSize=10)
for a in field_aliases:
header_flowables.append(Paragraph('<b>%s</b>' % a, style))
data.append(header_flowables)
for n in range(0, num_rows):
data.append(['', '', '', ''])
rowheights.append(39)
t=Table(data, field_widths, rowheights)
GRID_STYLE = TableStyle([
('GRID', (0,0), (-1,-1), 0.25, colors.black),
('FONT', (0,0), (-1,-1), 'HandSean'),
('BOX',(0,0),(-1,-1),2,colors.black)
])
t.setStyle(GRID_STYLE)
frame = Frame(x, y, width, height, showBoundary=0, leftPadding=0,
bottomPadding=0, rightPadding=0, topPadding=0)
frame.addFromList([t], self.canvas)
开发者ID:rturumella,项目名称:localground,代码行数:31,代码来源:reports.py
示例11: _generate_fromfield
def _generate_fromfield(c, styles, name, referat, email, logo):
addressbox = []
addressbox.append(Paragraph("Allgemeiner Studierendenausschuss", styles['Normal']))
addressbox.append(Paragraph("Adenauerring 7\n76131 Karlsruhe",styles['Normal']))
addressbox.append(Paragraph("<a href='Test'>Test</a>", styles['Normal']))
f = Frame(width - (5+1)*cm, height - (3.2+7.5)*cm, 5*cm, 7.5*cm, showBoundary=1)
f.addFromList(addressbox, c)
return c
开发者ID:noc0lour,项目名称:hsg-manager,代码行数:8,代码来源:functions.py
示例12: test1
def test1():
c = Canvas('figures.pdf')
f = Frame(inch, inch, 6*inch, 9*inch, showBoundary=1)
v = PlatPropFigure1()
v.captionTextColor = toColor('blue')
v.captionBackColor = toColor('lightyellow')
f.addFromList([v],c)
c.save()
开发者ID:AlonsoAyelen,项目名称:Voluntariado_veterinaria,代码行数:8,代码来源:figures.py
示例13: drawInfoBox
def drawInfoBox(c, t, x, y):
lines = []
c.setFillColor(HexColor('#E8E8E8'))
c.setStrokeColor(HexColor('#E8E8E8'))
c.rect(x - boxw / 2, y, boxw, boxh / 3.0, fill=1)
f = Frame(x - boxw / 2, y, boxw, boxh / 3.0, leftPadding=1, bottomPadding=1, rightPadding=1, topPadding=1, showBoundary=1)
lines.append(Paragraph(t, styleT))
f.addFromList(lines,c)
c.setStrokeColor(HexColor('#000000'))
开发者ID:miklosparrag,项目名称:orgchart,代码行数:9,代码来源:createchart.py
示例14: draw
def draw(self,canvas):
f = Frame(self.startx, self.starty - self.height + 10, self.width, self.height)
styles = getSampleStyleSheet()
styleN = styles['Normal']
styleN.fontSize = self.fontsize
styleN.leading = int(1.1 * self.fontsize)
data = []
data.append(Paragraph(self.string, styleN))
f.addFromList(data,canvas)
开发者ID:gridcell,项目名称:Legendary,代码行数:9,代码来源:PDFMap.py
示例15: __init__
def __init__(self, x1, y1, width,height, leftPadding=6, bottomPadding=6,
rightPadding=6, topPadding=6, id=None, showBoundary=0,
overlapAttachedSpace=None,_debug=None,background=None):
Frame.__init__(self, x1, y1, width, height, leftPadding,
bottomPadding, rightPadding, topPadding, id, showBoundary,
overlapAttachedSpace, _debug)
self.background = background
开发者ID:denisvolokh,项目名称:reportlab-report-prototype,代码行数:9,代码来源:color_frame.py
示例16: getPreformatted
def getPreformatted ( self, c, x, y, w, h, style, info, mm_mode = 1 ) :
""" formatieren Bereich zurueckgeben """
lInfo = []
lInfo.append(XPreformatted( info, style))
if mm_mode == 1 :
f = Frame ( x, y, w, h, showBoundary=0 )
else :
f = Frame ( x*mm, y*mm, w*mm, h*mm, showBoundary=0 )
f.addFromList ( lInfo, c )
开发者ID:shagun30,项目名称:djambala-2,代码行数:9,代码来源:pdf_confirm.py
示例17: cabecera
def cabecera(self, canvas):
origen = Frame(self.MARGEN, A4[1] - 1.5 * cm,
A4[0] - (2 * self.MARGEN), 1 * cm,
id='cabecera', showBoundary=self.mostrar)
story = []
story.append(Paragraph(self.header, self.estilos['cabecera']))
origen.addFromList(story, canvas)
canvas.line(x1=self.MARGEN, y1=A4[1] - 1.2 * cm,
x2=A4[0] - (self.MARGEN), y2=A4[1] - 1.2 * cm)
开发者ID:drmelectronic,项目名称:palabrayespiritu,代码行数:9,代码来源:pdf.py
示例18: createPdf
def createPdf(self, imageGenerator = None):
if imageGenerator:
mapImage = imageGenerator.createMapImage()
else:
mapImage = None
(self.filehandle,self.filename) = tempfile.mkstemp(suffix='.pdf')
c = canvas.Canvas(self.filename)
port_width,port_height = letter
land_width = port_height
land_height = port_width
c.setPageSize([land_width,land_height])
# choose some colors
c.setStrokeColorRGB(0.5,0.5,0.5)
c.setFillColorRGB(0.95,0.95,0.95)
# draw a rectangle
c.rect(0.45*inch,0.45*inch,10.1*inch,6.6*inch, fill=1)
# Add the image
if mapImage:
c.drawImage(mapImage,0.5*inch,0.5*inch,10.0*inch,6.5*inch)
c.setFont("Helvetica", 24)
c.setFillColorRGB(0,0,0)
c.drawString(0.5*inch, 7.5*inch,
self.fields['title'] or "Untitled")
description = self.fields['description'] or ""
styles = getSampleStyleSheet()
styleN = styles['Normal']
descriptionFlowable = [Paragraph(description,styleN)]
f = Frame(5*inch,7.25*inch,4*inch,1*inch,showBoundary=0)
f.addFromList(descriptionFlowable,c)
#descTextObj = c.beginText()
#descTextObj.setTextOrigin(7.5*inch,8*inch)
#descTextObj.setFont("Helvetica", 12)
#descTextObj.textLines(description)
#c.drawText(descTextObj)
if self.imagefilename:
logoImage = ImageReader(self.imagefilename)
c.drawImage(logoImage,9.25*inch,7.25*inch,1.25*inch,1*inch,
preserveAspectRatio=True, anchor="nw")
# define a large font
c.setFont("Helvetica", 14)
c.setFillColorRGB(1,1,1)
# Layers to draw
layers = self.fields['oldata']['mapLayers']
layerNames = ""
for layer in layers:
layerNames = layerNames + ' ' + layer['name']
#c.drawString(3.5*inch, 5*inch, "Map Layers Passed Down")
c.showPage()
c.save()
self.data = c.getpdfdata()
return (self.filename, self.data)
开发者ID:Ecotrust-Canada,项目名称:terratruth,代码行数:56,代码来源:amndssprint.py
示例19: getParagraph
def getParagraph ( self, c, x, y, w, h, style, info, mm_mode = 1 ) :
""" formatieren Bereich zurueckgeben """
lInfo = []
lInfo.append(Paragraph(info, style, encoding="utf-8"))
if mm_mode == 1 :
f = Frame ( x, y, w, h, showBoundary=0 )
else :
f = Frame ( x*mm, y*mm, w*mm, h*mm, showBoundary=0 )
f.addFromList ( lInfo, c )
return f
开发者ID:shagun30,项目名称:djambala-2,代码行数:10,代码来源:pdf_saved_infos.py
示例20: framePie
def framePie(pdf, obj):
# Recuadro controlado
pdf.setStrokeColorRGB(0, 0, 0)
f = Frame(margXizq, margYtop - 700, 230, 80)
f.drawBoundary(pdf)
pdf.setFont("Helvetica", 11)
pdf.rect(margXizq, margYtop - 640, 230, 0.5, 1, 1)
pdf.setFont("Helvetica-Bold", 11)
pdf.drawString(margXizq + 6, margYtop - 635, u"Controlado")
# Recuadro Recibido
pdf.setStrokeColorRGB(0, 0, 0)
f = Frame(margXizq, margYtop - 785, 230, 80)
f.drawBoundary(pdf)
pdf.setFont("Helvetica", 11)
pdf.rect(margXizq, margYtop - 725, 230, 0.5, 1, 1)
pdf.setFont("Helvetica-Bold", 11)
pdf.drawString(margXizq + 6, margYtop - 720, u"Recibido")
# Recuadro Autorizado
pdf.setStrokeColorRGB(0, 0, 0)
f = Frame(margXizq+240, margYtop - 700, 230, 80)
f.drawBoundary(pdf)
pdf.setFont("Helvetica", 11)
pdf.rect(margXizq+240, margYtop - 640, 230, 0.5, 1, 1)
pdf.setFont("Helvetica-Bold", 11)
pdf.drawString(margXizq + 246, margYtop - 635, u"Autorizado")
开发者ID:smatht,项目名称:inges,代码行数:30,代码来源:reports.py
注:本文中的reportlab.platypus.Frame类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论