Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Cannot retrieve contributors at this time

401 lines (331 sloc) 16.561 kb
Version Next
* get css backgrounds and fonts relative to the css file path
* fix CSS parser breaking on "@media screen and ..." (issue 132)
Version 0.0.5
* Switched dependency to Pillow instead of PIL.
* Converted the docs to rst (thanks tomscytale!)
* Huge performance improvements (thanks Andrea Bravetti!)
* Bugfixes.
Version 0.0.4
* Added a <pdf:pagecount/> tag to write the total number of pages.
* The <pdf:barcode/> tag now accepts a fontsize argument for the human-readable
* Various bugfixes and enhancements
The following changelog entries were relevant before the maintainer change.
"I would like to thank the people mentioned in brackets in this change log
very much for their help and support!" - Dirk
Version 3.0.33, 2010-06-16
- NEW: Changed license to Apache License 2.0, now completely Open Source
without any charging. Feel free to continue or for this project.
- FIX: Empty cells now collapse
Version 3.0.32, 2009-05-08
- NEW: New command line option '--base' to specify base path if input comes
- FIX: The 'keep in frame' feature for tables did not work inside of static
frames (Arun Shanker Prasad)
- FIX: Small typos
Version 3.0.31, 2009-05-04
- NEW: Support for Style "list-style-image", also supports "zoom"
- NEW: Temporary files internally are written to disk if they exceed a certain size
- NEW: Font names can now also read from external URL
- UPD: Modified demo
- FIX: Custom font image problem still appeared
- FIX: Single image in a block issue
- FIX: Randomly used wrong images is fixed using a workaround for the bug
in Reportlab _digester routine
- FIX: Empty tables error (Davide Moro)
- FIX: Fallback to urllib2 if httpdlib fails
Version 3.0.30, 2009-03-27
- NEW: Default CSS now hides content of <noscript>
- UPD: Better whitespace handling in RL Paragraph
- FIX: Fixed RL Paragraph.split to work with autoleading and images
- FIX: Small bug fix for show_error_as_pdf
- FIX: Demos used os.startfile which is not supported on non Windows OSes
- FIX: Table available height threw exceptions
- FIX: Switched from urllib2 to httplib for loading external sources
- FIX: Correct homepage and download page in
- FIX: Paragraphs in lists repeated the bullet
- FIX: Tables now support -pdf-keep-with-next
- FIX: TOC bug fixed
- FIX: Add missing table columns to avoid error in Reportlab table
- FIX: Fix for background images sizing
- FIX: Empty documents now create one blank page
- FIX: Imported fonts caused an error if used together with images
Version 3.0.29, 2008-12-01
- NEW: Warning if Reportlab 2.2 is not installed
- UPD: Better support for named colors
- UPD: Modifed frame handling to better support relative values
- FIX: Splitting paragraph threw errors some times; also had problems with
line breaks on the second page, fix for RL 2.2 paragraph was needed
- FIX: Added margins to <blockquote> default CSS
- FIX: Inline images in static frames did not work
- FIX: Link anchors and non internal fonts caused a strange error
Version 3.0.28, 2008-11-21
- NEW: Requires Reportlab 2.2 now!
- NEW: Background colors for inline elements like <span>
- NEW: Inline images and left and right aligned images implemented
- NEW: Possibility to handle table cells that are to large via CSS option
- NEW: Option "--system" for command line tool to dump system version infos
- NEW: CSS attribute -pdf-line-spacing for fix space between lines
- NEW: Creation and handling of data URI with base64 encoding (others to come)
- NEW: New general file loader that is also able to load remote data and data URI
- NEW: PDF Joiner to concatenate many PDF and pisa documents
- NEW: Page backgrounds can now be images or PDF
- NEW: Visual Unittests based on ImageMagick and TortoiseIDiff (for Windows)
- NEW: Pisa raises execptions now if errors occure; with
pisaDocument(..., raise_execeptions=False) you can turn them off
- UPD: Paragraphs now use the maximum leading to avoid overlapping text
- UPD: Removed "Keep with next" from H1 to H6
- FIX: Sizing of images is now handled better; should better work with PIL
- FIX: Border handling of paragraphs optimized and fixed
- FIX: Images that are higher than the page frame are scaled down to fit
- FIX: Paragraphs only containing &nbsp; are rendered
- FIX: Problem regarding the order of border style definitions
- FIX: Single <br> between two blocks now creates a new line
- FIX: Set table attribute "repeat" to "0"
- FIX: Some <font> attributes did not work as expected
- FIX: Font sizes reworked to behave like browser implmentations
- FIX: Like in most HTML browser table cells now have "valign=middle" and
table headers have font weight bold
- FIX: Little fix in CSS parsing
- FIX: Default of <link media=""> was "screen", changed to "all"
- FIX: Command line tools did not install with "easy_install"
Version 3.0.27, 2008-10-04
- INF: License changed from Qt to GPLv2
- INF: Not yet completely combatible with Reportlab 2.2 (&nbsp; errors and borders)
- NEW: Command line tool called "xhtml" ("pisa" still available but will
be deprecatedwith pisa 3.1)
- NEW: EGG for Python 2.6
- NEW: Basic support for Data URI
- NEW: New style -pdf-keep-with-next (does not work with pdf:toc for now)
- UPD: Setup now exclusively works with SetupTools
Version 3.0.26, 2008-08-28
- FIX: Python <2.5 didn't work because of a syntax error
Version 3.0.25, 2008-08-15
- UPD: Made imports more explicit to avoid import recursions
- FIX: <pdf:pagenumber/> didn't work in tables (Roman Lisagor)
- FIX: Images without suffixes have been ignored by pisa (Henning von Bargen)
- INF: Preparations for support of HTML FORM using INPUT, TEXTAREA, SELECT
Version 3.0.24, 2008-07-14
- NEW: Support for separate borders on each side of a paragraph has
been added (Robin Dunn)
- NEW: Support for font tag (color, face, size)
- UPD: Handling of margin and padding in paragraphs is improved (Robin Dunn)
- UPD: Updated documentation (CreatePDF, Images)
- FIX: A typo in margin-left has been fixed (Robin Dunn)
Version 3.0.23, 2008-06-26
- UPD: getColor() now understands colors like rgb(255,0,0) (Darryl Dixon)
- FIX: c.warning threw errors if no arguments where passed (Searle)
- FIX: pisa now works with html5lib 0.11.1
Version 3.0.22, 2008-06-06
- UPD: Updated documentation
- UPD: Speed optimizations by removing copy.deepcopy (Darryl Dixon)
- FIX: Small fix in CSS parser
Version 3.0.21, 2008-06-05
- FIX: Used a parameter for html5lib that was not supported by html5lib 0.10
- FIX: Now tested against the latest third party packages:
ReportLab 2.1
html5lib 0.10
pyPdf 1.11
Version 3.0.20, 2008-06-02
- NEW: New parameter "encoding" to explicitly set an encoding for the source data
- UPD: Added a programming example to documentation
- FIX: If a Unicode string is passed it will automatically be converted to UTF8
- FIX: Fixes for Google AppEngine support
- FIX: If possible cStringIO will be used instead of StringIO
- FIX: An exception in psaDocument was not handled the right way because
a context object was expected
Version 3.0.19, 2008-05-31
- NEW: Support for Google AppEngine
- NEW: Support for page break before and after [not yet tested] (Luka Frelih)
- UPD: Reworked parts of the documentation but not yet completed
- UPD: Optimized the command line tool "pisa"
- FIX: TOC bugs regarding entities and additional tags inside the TOC
entry definitions (Luka Frelih)
- FIX: Default logging didn't work with Python<2.5 (Anders J. Munch)
- FIX: StringIO is used instead of cStringIO to avoid encoding problems
like the ones we had with GoogleAppEngine
Version 3.0.18, 2008-04-19
- WIN: Updated the windows command line version
- NEW: WSGI support and demo
- NEW: Added simple ASPN Cookbook example
- UPD: Unified and (Andreas Gabriel)
- UPD: Better handling of XML and HTML parsing
- UPD: Cleanup of Django sample
- UPD: Cleanup of command line tool options
- UPD: Command line tool doesn't stop batch if error occurred any more
- FIX: 'style' attribute was not evaluated!
- FIX: If a string was passed to pisaDocument it had been converted to StringIO,
which was not necessary
- FIX: c.addPara(force=True) works again e.g. for forcing empty pages
- FIX: Better handling of CDATA and Comments
- FIX: Better handling of &nbsp;
- FIX: Removed rsplit() for backward compatibility with Python 2.3
- FIX: Handling of inconsistent HTML anchors
- FIX: TurboGears Demo
Version 3.0.17, 2008-03-23
- NEW: Added CSS support for TOC and updated documentation (Jean Baltus)
- UPD: Added "render_to_pdf" to Django demo (Diego Firmenich)
- UPD: Did some refactoring to make CSS parsing more flexible
- UPD: Removed log.exception for warnings
- FIX: Empty entries in TOC (Jean Baltus)
- FIX: Use correct font for <li> now (reported by Gabor Farkas)
Version 3.0.16, 2008-03-16
- Did some researches about support for languages like Farsi, Arabic and Asian
languages. The dir='rtl' feature seems to be quite time intensive to be
implemented, maybe I will do it in a later version or on request
- Switched back to HTML parsing by default, but use of XHTML is recommended. Use
the option "xhtml" in pisaDocument or "-x" in the command line tool
- Added a decorator for use in Turbogears and CherryPy
- Completely switched to Python logging system
- Created a separate download for the fonts in the "test" directory to
reduce the size of the package
- Just use multiBuild if needed e.g. using pdf:toc
- Bugfix: @font-face threw always a warning about font-weight
- Bugfix: List points have to be always in "Helvetica" (Gabor Farkas)
- Bugfix: Obligatory attributes for tag had not been handle the right way
- Bugfix: Marked some old tag based functionalities like pdf:font, pdf:frame and
pdf:template as deprecated
Version 3.0.15, 2008-03-13
- Added new package and namespace "ho". With pisa 3.1. we will move away form "sx"
- Added version testing (2.1) for Reportlab Toolkit (Diego Firmenich)
- Added new command <pdf:toc> for support of table of contents, stiling per CSS
has not been implemented yet (Jean Baltus)
- Added simple barcode support via command <pdf:barcode> (Diego Firmenich)
- Added Python logging. Name of logger "ho.pisa" and "ho.css". Set debugging
level in command line tool by using "-d" for debugging and "-w" for warnings
- Added complete support for CSS "font"
- Modified the version handling and setup system for pisa distributions (had to
do with the import errors that where not thrown, reported by Schmitte)
- Updated documentation and added a CSS for HTML version
- Bugfix: CSS "background" URL handling was broken (Luis Bruno)
- Bugfix: CSS "border" now works more standard conform
- Bugfix for compatibility problems with Python 2.3 because of reversed() function
- Bugfix: No exception was thrown if a third party module was missing (Kai Schmitte)
- Bugfix: Changed HTML5 parser from HTMLParser to XHTMLParser so that the
custom tags of the "pdf" namespace are handled like expected
- Bugfix: Switched from urllib to urllib2 because status errors (like 404) where
not handled (Kees Hink)
- A lot of smaller bugfixes and testings
Version 3.0.14, 2008-02-13
- Added a sample for Unicode support in exotic languages like "farsi" using
DejaSans font (Adam Hyde)
- Command line tool generation integrated into (Andreas Gabriel)
- Bugfix if no path had been set to pisaDocument()
- Bugfix for calculating @frame dimensions
- Bugfix: CSS comments like "//" where allowed (Andreas Gabriel)
Version 3.0.13, 2008-01-22
- Added a demo using cherrypy web server and kid
- Added a demo using django framework
- Modified test-background.html to work with CSS
- Added suport for bold and italic TTF fonts to the @font-face
CSS section (Robert Klep)
- Added suport for bold and italic Postscript fonts to the @font-face CSS section
- The @-rules are not need a trailing space after ident any more (Robert Klep)
- Fixed the Windows standalone version to work
- Made the 'sx' folder more sharable by modifying
- Changed font-weight so that only values starting with '400'are
considered 'bold' (Robert Klep)
- Added "text-indent" style (Robert Klep)
- Added "-pdf-keep-with-next" style to avoid page break between
certain elements (Robert Klep)
- Added "-pdf-outline", "-pdf-outline-level" and "-pdf-outline-open" styles to
create PDF bookmarks. Per default this is defined for
the tags H1 to H6 (Robert Klep)
- New option to overwrite the default CSS definitions of pisa
- New command line options --css
- New command line options --css-dump to get the default CSS definitions.
A dump of the recent CSS default may also be found in test/default.css
- Fixed
- Added EGG installation file support
Version 3.0.12, 2008-01-09
- Moved SVN repository to Holtwick
- Modified copyright notes and links to
- Added new table attributes "border", "bordercolor", "cellpadding"
- Added support for &nbsp;
Version 3.0.11, 2007-11-13
- New example for loading a page form the web via Python
- New example "test-invoice.html"
- Added support for "align" attribute to <td> and <th>
- Fixed that more than one static frame can use the same named element
- Added -pdf-next-page to specify next page template
- Added -pdf-frame-break: after, before
- Fixed bug for @page without declarations
- Added option for output of errors as PDF (e.g. useful in web applications)
- Set "producer" to "pisa"
- Set author, subject and keywords with <meta>
Version 3.0.10, 2007-11-02
- Fixed some problems with wrong @page and @frame definitions
- New property -pdf-frame-box
- Implemented a pre parser for CSS that cleans up the code with some
regular expression, like stripping illegal url(http://...)
- Improved online demo
- First release of binary Windows command line version or pisa
- Fixed some issues with named anchors
- Empty documents are now delivered correctly
- Fixed error on list types
- Fixed problem with debugging infos
Version 3.0.9, 2007-10-31
- Modified for Chesse Shop
- Added bdist_wininst to setup
- Moved w3c into sx package and added license text
- Modified demo script
- Clean up for first public release
Version 3.0.8, 2007-10-31
- Added <a name> and a bugfix for ReportLab anchors
- Added <a href>
- More documentation about fonts and new font aliases
- Fixed some bugs in tables
- <hr> now uses ReportLabs implementation
- Margin collapse by using spaceBefore and spaceAfter
- Renamed -pdf-page-size to size (CSS3)
Version 3.0.7, 2007-10-30
- Static frames in @frame
- Wrote layout section in documentation
- Updated the documentation CSS
- Renamed @box to @frame
- Added -pdf-page-size and -pdf-page-orientation
- Added @page and @box
- Fixed some problems with font definitions and Unicode
- Font "Times" does not exist, changed default to "Times-Roman"
- Margins, paddings and borders are only applied in display:block elements
Version 3.0.6, 2007-10-29
- Implemented @font-face
- "font-family" can now handle comma separated font names
- Implemented <pdf:font> for embedding TTF and PS fonts
- <link> looks for rel="stylesheet"
- Style "white-space" and support for PRE
- Nested lists and ordered lists, Style "list-style-type"
- Prepared parser for @page and @box
Version 3.0.5, 2007-10-25
- Initial implementation of @font-face
- Warnings are only shown if flag -w is set
- Relative @import implementations
- Workaround for styles beginning with asterics like "*font: small"
- Support for color=transparent (threw Exceptions before)
- For @import with now media, is now set media=all
- Fixed the .1 CSS parser problem
- Removed cssutils again because of problems with @import
- Ignore CDATA in style definitions
- New method c.debug and command line option --debug
- Better URL support
- CSS attributes may now start with hyphen for vendor
specific styles e.g. "-pdf-page-break"
- Implemented @import
- Implemented @media
- Images are now recalculated to 96DPI too
- 1px = 1/96inch (96dpi) instead of 1px = 1pt = 1/72inch
- Added some new tests like test-css-media.html
Version 3.0.0
- Initial versions of pisa rewrite
Jump to Line
Something went wrong with that request. Please try again.