ReportLab - Frames - Images

C

Chuck

I have been trying all day to get this to work. My complete code is
below. I can get my text into the PDF, I can get my image in the PDF.
What I can't get to work is frames so that the image (logo) appears to
the right of the text. The image always appears first and then the text
below on the next line.

Please help.


Chuck

*************** CUT ***********************
from reportlab.pdfgen import *

from reportlab.platypus import *

from reportlab.lib.units import inch
from reportlab.platypus import SimpleDocTemplate
from reportlab.platypus import flowables
from reportlab.lib.enums import TA_LEFT, TA_RIGHT, TA_CENTER,
TA_JUSTIFY

from reportlab.lib.pagesizes import letter



#precalculate some basics
top_margin = letter[1] - inch
bottom_margin = inch
left_margin = inch
right_margin = letter[0] - inch
frame_width = right_margin - left_margin

def bill(canvas, doc):
canvas.saveState()
canvas.restoreState()

def run():
doc = []
from reportlab.lib.styles import ParagraphStyle
from reportlab.platypus import Image

pdf = SimpleDocTemplate('bill2.pdf', pagesize = letter)

#need a style
normal = ParagraphStyle('normal')

doc.append(Image("pic.jpg", 100, 71)) #Logo

para = Paragraph("Some text1", normal)
doc.append(para)
para = Paragraph("Some text2", normal)
doc.append(para)
para = Paragraph("Some text3", normal)
doc.append(para)
para = Paragraph("Some text4", normal)
doc.append(para)
para = Paragraph(" ", normal)
doc.append(para)
doc.append(HRFlowable(color="black", thickness=3, width="100%"))


pdf.build(doc,bill)

run()
*************************** CUT ***********************************
 
R

Robin Becker

Chuck said:
I have been trying all day to get this to work. My complete code is
below. I can get my text into the PDF, I can get my image in the PDF.
What I can't get to work is frames so that the image (logo) appears to
the right of the text. The image always appears first and then the text
below on the next line.

Please help.


you'll get more help at the reportlab users list (see

http://two.pairlist.net/pipermail/reportlab-users/ )

Anyhow I got some output from your script, by making two changes

*************** CUT ***********************
from reportlab.pdfgen import * ...........

pdf = SimpleDocTemplate('bill2.pdf', pagesize = letter)

#need a style
normal = ParagraphStyle('normal')

doc.append(Image("pic.jpg", 100, 71)) #Logo

para = Paragraph("Some text1", normal)
doc.append(para)
para = Paragraph("Some text2", normal)
doc.append(para)
para = Paragraph("Some text3", normal)
doc.append(para)
para = Paragraph("Some text4", normal)
doc.append(para)
para = Paragraph(" ", normal)
doc.append(para)
doc.append(HRFlowable(color="black", thickness=3, width="100%"))

change(1)
doc.append(flowables.HRFlowable(color="black", thickness=3, width="100%"))
pdf.build(doc,bill)
change(2)

pdf.build(doc)


run()
*************************** CUT ***********************************


I also had to change the name of the image to one on my system.

Hope this helps
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,535
Members
45,007
Latest member
obedient dusk

Latest Threads

Top