|
Graphics.Rendering.Diagrams.Engine | Portability | portable | Stability | experimental | Maintainer | byorgey@gmail.com |
|
|
|
|
|
Description |
The core rendering engine for Graphics.Rendering.Diagrams, an
embedded domain-specific language (EDSL) for creating simple
diagrams.
|
|
Synopsis |
|
|
|
|
Preprocessing
|
|
These functions take a user-generated Diagram object and
preprocess it in preparation for final rendering. The
preprocessing includes calculating diagram sizes and positioning
diagrams by the addition of appropriate translate annotations.
|
|
|
Given a Diagram, compute its total size, and produce a new
version of the Diagram with all sub-Diagrams positioned
properly.
|
|
Rendering
|
|
The rendering code takes a Diagram and turns it into
actual graphics output, using the Cairo library to perform the low-level
drawing operations.
|
|
User interface
|
|
|
:: SizeSpec | output width or height
| -> Diagram | Diagram to render
| -> (Point, Render ()) | Output width and height, and Cairo action
to render it
| Given a target width or height and a user-constructed Diagram,
render it using the Cairo rendering library. Note that compose
takes care of all the rendering details, including preprocessing
of the Diagram, and scaling/translating the final output so
that it fits within the given width or height. compose also
produces the size of the final diagram; the width or height will
be equal to that specified in the input, and the other dimension
will be determined by the aspect ratio of the diagram.
The background of the output diagram will be opaque white.
In order to produce a physical output, the output of compose
must be given as input to an output adapter such as writePng.
Normally, however, a user of the diagrams library should not need
to call compose directly.
|
|
|
|
Given a rendered diagram, output it to a file in PNG format with
the given width and height.
|
|
|
Given a rendered diagram, output it to a file in PostScript
format with the given width and height.
|
|
|
Given a rendered diagram, output it to a file in PDF
format with the given width and height.
|
|
|
Given a rendered diagram, output it to a file in SVG
format with the given width and height.
|
|
|
|
|
|
|
|
|
|
Given a list of rendered diagrams with their height and width,
output them as separate pages to a file in PostScript format
|
|
|
Given a list of rendered diagrams with their height and width,
output them as separate pages to a file in DFt format
|
|
|
Given a file name, an output size specification, and a list of
Diagrams, use a "backend" to render the Diagrams as separate
pages to an actual physical output.
|
|
|
|
Internals
|
|
|
Perform a rendering operation atomically, by saving the state and
restoring it afterwards.
|
|
|
Render a diagram.
|
|
Produced by Haddock version 2.6.1 |