Skip to main content

An alternative implementation of RML

Project description

z3c.rml – An alternative implementation of RML

This is an alternative implementation of ReportLab’s RML PDF generation XML format. Like the original implementation, it is based on ReportLab’s reportlab library.

You can read all about z3c.rml and see many examples on how to use it, see the “RML Reference”:http://svn.zope.org/z3c.rml/trunk/src/z3c/rml/rml-reference.pdf?view=auto

CHANGES

2.0.0 (2012-12-21)

  • Implemented saveState and restoreState directives. (LP #666194)

  • Implemented storyPlace directive. (LP #665941)

  • Implemented clip attribute of path directive. See RML example 041.

  • Added h4, h5, and h6 directives.

  • Implemented codesnippet directive.

  • Implemented pageBreakBefore, frameBreakBefore, textTransform, and endDots attributes for paragraph styles.

  • Added maxLineLength and newLineChars attributes to the pre directive.

  • Implemented pageNumber element for all draw*String elements.

  • Implemented NamedString directive.

  • Implemented startIndex and showIndex directive. Also hooked up index in paragraphs properly. You can now create real book indexes.

  • Implemented ol, ul, and li directives, which allow highly flexible lists to be created. Also implemented a complimentary listStyle directive.

  • Implemented the following doc-programming directives:

    • docAssert

    • docAssign

    • docElse

    • docIf

    • docExec

    • docPara

    • docWhile

  • Added encName attribute to registerCidFont directive.

  • Renamed bookmark to bookmarkPage.

  • Created a new canvas directive called bookmark.

  • Added img directive, which is a simple image flowable.

  • Implemented crop marks support fully.

  • Added pageLayout and pageMode to docInit directive.

  • Implemented all logging related directives.

  • Implemented color directive inside the initialize directive.

  • Renamed pdfInclude to documented includePdfPages and added pages attribute, so that you can only include specific pages.

  • Don’t show “doc” namespace in reference snippets.

  • Create a list of RML2PDF and z3c.rml differences.

  • Implemented the ABORT_ON_INVALID_DIRECTIVE flag, that when set True will raise a ValueError error on the first occurence of a bad tag.

  • Implemented setFontSize directive for page drawings.

  • Implemented plugInGraphic which allows inserting graphics rendered in Python.

  • Added href and destination to table cells and rectangles.

  • Bug: Due to a logic error, bad directives were never properly detected and logged about.

  • Bug: Overwriting the default paragraph styles did not work properly.

  • Bug: Specifying a color in any tag inside the paragraph would fail, if the color was a referenced name.

  • Bug: Moved premature getName evaluation into runtime to properly handle synamic content now. This is now properly done for any paragraph and draw string variant.

  • Bug: Fixed DTD generator to properly ignore Text Nodes as attributes. Also text nodes were not properly documented as element PCDATA.

1.1.0 (2012-12-18)

  • Upgrade to ReportLab 2.6. This required some font changes and several generated PDFs did not match, since some default fonts changed to sans-serif.

  • Added pdfInclude directive from Alex Garel. (LP #969399).

  • Switched to Pillow (from PIL).

  • Switched RML highlighting in RML Reference from SilverCity to Pygments.

  • Bug: Addressed a bug in ReportLab 2.6 that disallowed 3-D pie charts from rendering.

  • Bug: Properly reset pdfform before rendering a document.

  • Bug: Reset fonts properly before a rendering.

1.0.0 (2012-04-02)

  • Using Python’s doctest module instead of depreacted zope.testing.doctest.

0.9.1 (2010-07-22)

  • I found a more complete paragraph border patch from Yuan Hong. Now the DTD is updated, the border supports a border radius and the tag-para.rml sample has been updated.

0.9.0 (2010-07-22)

  • Upgraded to ReportLab 2.4. This required some font changes and several generated PDFs did not match, since some default fonts changed.

  • Upgraded to latest lxml. This only required a trivial change. Patch by Felix Schwarz.

  • Implemented linePlot3D directive. Patch by Faisal Puthuparackat.

  • Added paragraph border support. Patch by Yuan Hong.

  • Bug: Fixed version number in reference.pt. Patch by Felix Schwarz.

  • Bug: Write PDF documents in binary mode. Patch by Felix Schwarz.

0.8.0 (2009-02-18)

  • Bug: Use python executable as a part of the subprocess command.

  • Add support for RML’s pageNumber element.

0.7.3 (2007-11-10)

  • Make sure that the output dir is included in the distribution.

0.7.2 (2007-11-10)

  • Upgraded to work with ReportLab 2.1 and lxml 1.3.6.

  • Fix sub-process tests for a pure egg setup.

0.7.1 (2007-07-31)

  • Bug: When the specified page size (within the pageInfo element) was a word or set thereof, the processing would fail. Thanks to Chris Zelenak for reporting the bug and providing a patch.

0.7.0 (2007-06-19)

  • Feature: Added a Chinese PDF sample file to tests/expected under the name sample-shipment-chinese.pdf.

  • Feature: Added another tag that is commonly needed in projects. The <keepTogether> tag will keep the child flowables in the same frame. When necessary, the frame break will be automatic. Patch by Yuan Hong.

  • Feature: Added the “alignment” attribute to the blockTable directive. This attribute defines the horizontal alignment for a table that is not 100% in width of the containing flowable. Patch by Yuan Hong.

  • Feature: When creating Chinese PDF documents, the normal TTF for Chinese printing is ‘simsun’. However, when bold text is neeed, we switch to ‘simhei’. To properly register this, we need the reportlab.lib.fonts.addMapping function. This is missing in the reportlab RML specification, so a new directive has been defined:

    <addMapping faceName="simsun" bold="1" italic="0" psName="simhei" />

    Patch by Yuan Hong.

  • Feature: The para and paraStyle directive now support the “wordWrap” attribute, which allows for selecting a different wrod wrapping algorithm. This is needed because some far-East Asian languages do not use white space to separate words. Patch by Yuan Hong.

  • Bug: Handle Windows drive letters correctly. Report and fix by Yuan Hong.

0.6.0 (2007-06-19)

  • Bug: Fixed setup.py to include all dependencies.

  • Bug: Added test to show that a blocktable style can be applied multiple times. A user reported that this is not working, but I could not replicate the problem.

  • Update: Updated the expected renderings to ReportLab 2.1. There were some good layout fixes that broke the image comparison.

0.5.0 (2007-04-01)

  • Initial Release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

z3c.rml-2.0.0.tar.gz (982.5 kB view details)

Uploaded Source

File details

Details for the file z3c.rml-2.0.0.tar.gz.

File metadata

  • Download URL: z3c.rml-2.0.0.tar.gz
  • Upload date:
  • Size: 982.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for z3c.rml-2.0.0.tar.gz
Algorithm Hash digest
SHA256 c7df0a0d2c265c665199277cf1a6948728d4814716a60066901f6c7faf396a8b
MD5 267f2be5948a1dafec388c6ed8864c57
BLAKE2b-256 d3bc6b383c13790340776ba3310d88ab8d025c7ad47f26def0a8ef82d182d10a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page