new backend renderer
Robin Becker <[email protected]> Thu, 25 Feb 2021 13:21:34 +0000
| Newsgroups | gmane.comp.python.reportlab.user |
|---|---|
| Message-ID | <[email protected]> |
Hi Claude, after the problems with 3.5.60 I decided that the lgl_libart renderer in _renderPM.c is not able to cope with the kinds of drawings that you need. So I have coded another renderer call rlPyCairo which acts as an interface between reportlab.graphics.renderPM and pycairo. The rlPyCairo package is available on pypi, but because we can no longer build 2.7 wheels for reportlab I have not pushed 3.5.61 to pypi. The wheels I have built are available at our own pypi https://www.reportlab.com/pypi. This renderer does render your failing example properly (so far as I can tell) and the fill overflows do not occur. Cairo is obviously a more up to date code so I would expect that. To get this renderer into action a parameter has to be passed into the PMCanvas; that can be done with a global setting rl_config.renderPMBackend='rlPyCairo'. Alternatively the drawing save method can have _renderPM_backend='rlPyCairo' passed in. -- Robin Becker