[reportlab-users] How to add a title to a chart?
reportlab-users@reportlab.com
reportlab-users@reportlab.com
Thu, 11 Sep 2003 08:42:35 -0400 (EDT)
Thanks for the feedback. I realized that I'm going to need to make some
multi-page .pdf files. Should I use platypus for those?
>> Hi-
>>
>> I want to add a title to a chart. I can think of two ways to do it:
>>
>> 1. Use create a string object and use the x and y attributes to move it
>> around it until I get it centered.
>>
>> 2. Learn how platypus works and embed the chart image inside the page.
>>
>> How are the rest of you adding titles to charts?
>
> We do (1). If you ever wanted to export the chart in a different format,
> you would want the title.
>
> However, centering it is a bit easier than you suggest. If you have a
> 200x100 drawing and want the string centred, do
> d = Drawing(200, 100)
> title = String(100,80, 'My title', textAnchor='middle')
>
> The textAnchor can be one of 'start','middle' or 'end'.
>
> Also, you can get automatic layout information if you need it. You have
> to
> position the 'inner rectangle' of the chart with (x,y,width,height)
> properties, but you can find out how much the axis labels and so on stick
> out by calling <any graphics object>.getBounds(). This may be useful if
> you
> want to center above the combined chart-and-axzis-labels, instead of a
> known
> x value.
>
> The graphics objects have LOTS of properties which are extensively
> tested (we use them in commercial development) but not well enough
> documented for the open source code. In general, glance at
> the first few lines of the class definition for the 'attribute map'
> to tell you what is available. The things beginning with 'is' are
> validators defined in reportlab\lib\validators.py, and will
> tell you what values are possible.
>
> class String(Shape):
> ...snip...
> _attrMap = AttrMap(
> x = AttrMapValue(isNumber),
> y = AttrMapValue(isNumber),
> text = AttrMapValue(isString),
> fontName = AttrMapValue(None),
> fontSize = AttrMapValue(isNumber),
> fillColor = AttrMapValue(isColorOrNone),
> textAnchor = AttrMapValue(isTextAnchor),
> )
>
> Hope this helps,
>
> Andy
>
> _______________________________________________
> reportlab-users mailing list
> reportlab-users@reportlab.com
> http://two.pairlist.net/mailman/listinfo/reportlab-users
>