Reportlab2

Latest version: v4.1.0

Safety actively analyzes 712665 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 11 of 16

3.3

-----------------------
* Canvas & Doctemplate now allow specification of the initial font Name, Size & Leading. Prevously you had to mess with rl_settings to accomplish this.
* Canvas & Doctemplate now support specification of the crop/art/trim/bleed boxes.
* Add option to auto generate missing TTF font names. Handy for CJKers with home produced fonts. Also attempt to prevent usage of multiple TTFs with same name.
* Paragraph styles now have justifyBreaks to control justification of lines broken with <br/>.
* Paragraph styles now have justifyLastLine=n to control justification of last lines with more than n words (0 means do not).
* Added EAN-5 and ISBN barcode widgets (contribution by Edward Greve).
* Bug fix of QrCodeWidget (prompted by https://bitbucket.org/fubu/).
* Frames now have support for automatic flowables at the top of frame. story support via the class reportlab.platypus.flowables.SetTopFlowables.
* Added support for Trapped and ModDate PDF info dictionary keys.
* Bug fix for pie charts with no data (raised by Michael Spector).
* New barcodes BarcodeCode128Auto & BarcodeECC200DataMatrix (contributed by Kyle MacFarlane).
* Improved LinePlot marker handling.
* PyPy improvements inspired by Marius Gedminas.
* Bug fix in reportlab.lib.utils.simpleSplit (reported by Chris Buergi <cbenerweb.ch>).
* Unwanted escaping in renderSVG fixed (reported by Ruby Yocum).
* Bug fix in _rl_accel.c (remove excess state and fix refcount breakage reported by Mark De Wit <mark.dewitiesve.com>).
* Code128 barcode length optimization inspired by Klaas Feenstra.
* Paragraph <sup>/<super> & <sub> tags now support rise & size attributes to allow special control over position & font size.
* Splitting tables now remove unwanted styles in the first part of the split (reported by Lele Gaifax).
* test changes inspired by https://bitbucket.org/stoneleaf
* ReportLab now runs all tests under Python 2.7, 3.3, 3.4 & 3.5.


Contributors:
* Edward Greve
* https://bitbucket.org/fubu/
* Michael Spector
* Kyle MacFarlane
* Marius Gedminas
* Chris Buergi
* Ruby Yocum
* Mark de Wit
* Klaas Feenstra
* Lele Gaifax
* https://bitbucket.org/stoneleaf

3.2

-----------------------

* Added proportional underlining specific to font sizes, set via the `underlineProportion` attribute of ParagraphStyles.
* TrueType fonts: added support for cmaps 10 & 13
* DocTemplate class now supports a boolean `displayDocTitle` argument.
* TableofContents now supports a formatter argument to allow formatting of the displayed page numbers (eg for appendices etc).
* Table `repeatRows` can now be a tuple of row numbers to allow incomplete ranges of rows to be repeated.
* Tables now do pass instance.`spaceBefore` & `spaceAfter` to their split children when split
* Several strangenesses were fixed in the pdfbase.pdfform module; Multiple usage is now allowed.
* Error message fixes
* Various environment fixes for Google Application Environment
* Resource fixes
* PDFDoc can now set the `Lang` attribute
* canvas.drawString and similar now allow the character spacing to be set
* Index of accented stuff has been improved
* RTL code was improved
* fix Propertyset.clone
* `flowables.py`: fix ImageAndFlowables so it avoids testing negative availableWidth

Contributors:
* Steven Jacobs
* Philip Semanchuk
* Marius Gedminas
* masklinn
* Kale Franz
* Albertas Agejavas
• Anders Hammarquist
* jvanzuela bitbucket
* Glen Lindermann
* Greg Jones
* James Bynd
* fcoelho bitbucket

3.1

-----------------------

If you are running ReportLab 3.0.x, the changes are minor.
* support for emoji - characters outside the Unicode basic multilingual plane
* improved pip-based installers will pull in all the needed dependencies; Pillow 2.4 appears to deal with all our issues.

Contributors
* Ivan Tchomgue
* Waldemar Osuch
* masayuku
* alexandrel_sgi

3.0

-----------------------

ReportLab 3.0 now supports Python 2.7, 3.3 and higher.

There has been a substantial internal rewrite to ensure consistent use of unicode strings for
natural-language text, and of bytes for all file format internals. The intent
is to make as few API changes as possible so that there should be little or no
impact on users and their applications. Changes are too numerous but can be
seen on Bitbucket.

Python 3.x compatibility
* Python 3.x compatibility. A single line of code should run on 2.7 and 3.3
* __init__.py restricts to 2.7 or >=3.3
* __init__.py allow the import of on optional reportlab.local_rl_mods to allow monkey patching etc.
* rl_config now imports rl_settings & optionally local_rl_settings
* ReportLab C extensions now live inside reportlab; _rl_accel is no longer required; All _rl_accel imports now
pass through reportlab.lib.rl_accel
* xmllib is gone, alongside the paraparser stuff that caused issues in favour of HTMLParser.
* some obsolete C extensions (sgmlop and pyHnj) are gone
* Improved support for multi-threaded systems to the _rl_accel extension module.
* Removed reportlab/lib/ para.py & pycanvas.py; these would better belong in third party packages,
which can make use of the monkeypatching feature above.


New features
* Add ability to output greyscale and 1-bit PIL images without conversion to RGB. (contributed by Matthew Duggan)
* highlight annotation (contributed by Ben Echols)

Other
* numerous very minor fixes, visible through BitBucket.

2.7

-----------------------

Charts / graphics enhancements
* Added SimpleTimeSeriesPlot
* added _computeMaxSpace
* added in lineStyle (for bars)
* improved SVG rendering
* Pie Chart now has an `innerRadiusFraction` to allow doughnut-like appearance for 2d charts (it has no effect with 3d charts).
The separate 'doughnut' chart lacks many pie chart features and should only be used if you wanted multiple nested doughnuts.

Charts/graphics bug fixes
* piecharts.py: fix Pie3d __init__ to call its superclass
* linecharts.py: fix swatch creation
* fixed `y` axis in the simple time series plot

PDF
* Fixes to testshapes & pdfform resetting
* colors.py
* various minor fixes

Platypus
* Defined a small bullet rather than a big circle as the default for unordered lists
* fixed attribute spelling bug
* fixed CJK + endDots

Acknowledgements
Many thanks to Andrew Cutler, Dinu Gherman, Matthias Kirst and Stephan Richter for their contributions to this release.

2.6

-----------------------

This is a minor release focusing mainly on improved documentation. There are a
number of minor enhancements, and a larger number of previous-undocumented
enhancements which we have documented better.

General changes
* Manuals have been reformatted with more pleasing code snippets and tables of
contents, and reviewed and expanded

Flowing documents (Platypus)
* Added support for HTML-style list objects
* Added flexible mechanism for drawing bullets
* Allowed XPreformatted objects to use Asian line wrapping
* Added an `autoNextPageTemplate` attribute to PageTemplates. For example you
can now set up a 'chapter first page template' which will always be followed
by a 'continuation template' on the next page break, saving the programmer from
having to issue control flow commands in the story.
* added a TopPadder flowable, which will 'wrap' another Flowable and move it
to the bottom of the current page.
* More helpful error messages when large tables cannot be rendered
* Documentation for images within text (`test_032_images`)
* Trailing dots for use on contents pages

Charts and graphics
* Support for UPCA bar codes
* We now have a semi-intelligent system for labelling pie charts with
callout lines. Thanks to James Martin-Collar, a maths student at Warwick
University, who did this as his summer internship.
* Axes - added startOffset and endOffset properties; allowed for axis
background annotations.
* Bar charts - allow more control of z Index (i.e. drawing order of axes and
lines)
* Pie charts - fixed bugs in 3d appearance
* SVG output back end has seen some bugs fixed and now outputs resizeable SVG

Contributors
* Alex Buck
* Felix Labrecque <felixldensi.com>
* Peter Johnson <johnson.petergmail.com>
* James Martin-Collar
* Guillaume Francois

Page 11 of 16

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.