[reportlab-users] [ANN] PyCanvas, the return of the revenge of the mission !

Jerome Alet reportlab-users@reportlab.com
Wed, 2 Oct 2002 11:49:27 +0200


--9jxsPFA5p3P2qPhR
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Hi,

the attached gzipped pycanvas.py v0.5 might be of mucho
interest when debugging :

  it generates well commented source code, and tracks important 
data like page numbers, numbers PDFPathObjects and PDFTextObjects
as well as forms, and puts the saveState/restoreState nesting
level and dictionnary values in the comments !

I sincerely hope you'll enjoy this.

bye,

Jerome (now maybe I will do something else) Alet

--9jxsPFA5p3P2qPhR
Content-Type: application/octet-stream
Content-Disposition: attachment; filename="pycanvas.py.gz"
Content-Transfer-Encoding: base64

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
/f0CrZ9E/we4Q1/XySQAAA==

--9jxsPFA5p3P2qPhR--