Specifically we use tinyrml2pdf which is an xml based format that builds on the reportlab libraries. The specification to generate the PDF is in XML instead of python code so its easier to create at template.
http://openreport.org/index.py/static/page/trml2pdf
The latest tinyrml2pdf is included in the attendance package. The next step would be to extract this to it's own package. It's licensed under the LGPL.