Announcing ReportLab 4.5.0 - 30/04/2026
We’re happy to announce versions 4.5.0 of our ReportLab PLUS (our commercial package) and reportlab (Open Source) packages.
New Features
Added support for
blockTableshadow attribute.shadow=”ShadowStyle(dx=4,dy=-4,color0=’green’,color1=’lite_green’,nshades=100)”>dx- sets the x position of the shade box related to the tabledy- sets the y position of the shade box related to the tablecolor0- Main shade colorcolor1- lighter shade colornshades- number of shades between color0 and color1
Added
angleRangeto Pie & Doughnut to allow for less than 360 degrees to represent 100%, added in 4.4.1Added support for REPORTLAB_PLUS_LICENCE environment variable to be used as a secret for watermark removal (commercial feature), added in 4.4.2
Added support for
wordSpacein<drawString>and similar tags, wherecharSpaceis the space between characters and wordSpace is the space between words, added in 4.4.4
Improved
colors.cssParsecsuggested by Moritz Schreiber, to allow RGB CSS colors to be used with floating numbers directly to create colors that match floating numbers provided. Allow alpha channel by using "/” to add transparency values.Changes to RML
<frame x2/width y2/height>to set width and heights.Added support for RML
<docElif cond=expr/>
<story>
<docAssign var="i" expr="4"/>
<docIf cond="i==5">
<para>This is the IF</para>
<docElif cond="i==4"/>
<para>This is the Elif</para>
</docIf>
</story>Allow
svg srcin rml para..img tags;PlusCanvas drawImageallows drawings img-allows-svg.Added
placePara/XPre drawOnceattribute to stop repeated drawings.Added new default “None” to mean no-draw in acroform.py.
Extended allowTableBoundsErrors scope to stop negative available heights tracebacks. Expected values: 0 = suppress nothing, 1 = suppress cell, 2 = suppress table, 3 = suppress all.
Security
Fixed callback security hole reported by Pedro gankd;
Applied FIPS changes ie md5 has usedforsecurity=False; patch in open source from Martin Renters.
Bugfixes
Bug fixes to Fieldreader.py and added xmlSafe arguments.
Bug fixes in
tagTypeas Artifact for crossMark and showBoundary rects;Bug fix handling of
<td>tagging attrs RowSpan/ColSpan;Bug fix for broken anchor placement in
PlacedStory.
Accessibility
Fixed tagging for failing/missing required==False inline==False image.
Fixed tagged link
altTexthandling.Improved RML table summary on page split.
Dependency Changes
Moved extformat.py from reportlab/lib.
Dropped support for python versions < 3.9.
Removed chardet dependency;
Examples
Added an x-reversed image illustration example.
Added a new example demonstrating repeating several nested table headings and subheadings on overflow.






