specify max width to reportlab.canvas.drawString

Robin Becker robin at reportlab.com
Fri Sep 18 06:20:26 EDT 2009


juanefren wrote:
> I am using reportlab to create pdf documents, everything looks fine,
> how ever, is there a way to specify a max width to drawString
> function ? I mean cut the sentence and continue a step down...
> 
> Cheers....
You'll get better results asking at the reportlab user group

reportlab-users at reportlab.com

but there are some ways to do what you want just with simple string manipulation.


Assuming you know the initial x, y and have setup a canvas with the font and 
sizeand the maximum width you want.



from reportlab.lib.utils import simpleSplit
L = simpleSplit(text,canv._fontname,canv._fontsize,maxWidth)

for t in L:
	canv.drawString(x,y,t)
	y -= canv._leading


I haven't tested this code, but that's the principle anyway for direct drawing 
to the canvas.
-- 
Robin Becker




More information about the Python-list mailing list