Module document¶
Section author: Jörg Lehmann <joergl@users.sourceforge.net>
The document module contains two classes: document and page. A document consists of one or several pages.
Class page¶
A page is a thin wrapper around a canvas, which defines some additional properties of the page.
- class document.page(canvas, pagename=None, paperformat=None, rotated=0, centered=1, fittosize=0, margin=1 * unit.t_cm, bboxenlarge=1 * unit.t_pt, bbox=None)¶
Construct a new page from the given canvas instance. A string pagename and the paperformat can be defined. See below, for a list of known paper formats. If rotated is set, the output is rotated by 90 degrees on the page. If centered is set, the output is centered on the given paperformat. If fittosize is set, the output is scaled to fill the full page except for a given margin. Normally, the bounding box of the canvas is calculated automatically from the bounding box of its elements. Alternatively, you may specify the bbox manually. In any case, the bounding box is enlarged on all sides by bboxenlarge.
Class document¶
A document can be written to a file using one of the following methods:
- document.writeEPSfile(file, title=None, strip_fonts=True, text_as_path=False, mesh_as_bitmap=False, mesh_as_bitmap_resolution=300)¶
Write a single page document to an EPS file or to stdout if file is set to -. title is used as the document title, strip_fonts enabled font stripping (removal of unused glyphs), text_as_path converts all text to paths instead of using fonts in the output, mesh_as_bitmap converts meshs (like 3d surface plots) to bitmaps (to reduce complexity in the output) and mesh_as_bitmap_resolution is the resolution of this conversion in dots per inch.
- document.writePSfile(file, writebbox=False, title=None, strip_fonts=True, text_as_path=False, mesh_as_bitmap=False, mesh_as_bitmap_resolution=300)¶
Write document to a PS file or to to stdout if file is set to -. writebbox add the page bounding boxes to the output. All other parameters are identical to the writeEPSfile() method.
- document.writePDFfile(file, title=None, author=None, subject=None, keywords=None, fullscreen=False, writebbox=False, compress=True, compresslevel=6, strip_fonts=True, text_as_path=False, mesh_as_bitmap=False, mesh_as_bitmap_resolution=300)¶
Write document to a PDF file or to stdout if file is set to -. author, subject, and keywords are used for the document author, subject, and keyword information, respectively. fullscreen enabled fullscreen mode when the document is opened, writebbox enables writing of the crop box to each page, compress enables output stream compression and compresslevel sets the compress level to be used (from 1 to 9). All other parameters are identical to the writeEPSfile().
- document.writetofile(filename, *args, **kwargs)¶
Determine the file type (EPS, PS, or PDF) from the file extension of filename and call the corresponding write method with the given arguments arg and kwargs.
Class paperformat¶
- class document.paperformat(width, height, name=None)¶
Define a paperformat with the given width and height and the optional name.
Predefined paperformats are listed in the following table
instance | name | width | height |
---|---|---|---|
document.paperformat.A0 | A0 | 840 mm | 1188 mm |
document.paperformat.A0b | 910 mm | 1370 mm | |
document.paperformat.A1 | A1 | 594 mm | 840 mm |
document.paperformat.A2 | A2 | 420 mm | 594 mm |
document.paperformat.A3 | A3 | 297 mm | 420 mm |
document.paperformat.A4 | A4 | 210 mm | 297 mm |
document.paperformat.A5 | A5 | 148.5 mm | 210 mm |
document.paperformat.Letter | Letter | 8.5 inch | 11 inch |
document.paperformat.Legal | Legal | 8.5 inch | 14 inch |