CONTEXTFREE(1)

NAME
cfdg - image generator based on context-free grammars

SYNOPSIS
cfdg [options] input.cfdg [output.png/svg]

DESCRIPTION
Context Free is a system that produces images based on context-free grammars. cfdg is the command-line program to generate the actual images (in PNG or SVG format) from the input.cfdg file containing these grammars. If - is specified instead of an input file, the grammar is read from standard input. The output filename can be left out if the -o option is used. Note that the output mode (PNG or SVG) is not detected depending on the specified extension, but must be explicitly set using the -V/--svg option.

OPTIONS
All command-line options consist of a single letter, and an optional argument. A summary of options supported by cfdg is included below.

-w, --width=WIDTH
    Set width of the output image in pixels (for PNG) or millimeters (for SVG) (default: 500).

-h, --height=HEIGHT
    Set height of the output image in pixels (for PNG) or millimeters (for SVG) (default: 500).

-s, --size=SIZE
    Set both width and height of the output image in pixels (for PNG) or millimeters (for SVG) to the same value.

-s, --size=WIDTHxHEIGHT
    Set both width and height of the output image in pixels (for PNG) or millimeters (for SVG).

-T, --tile=SIZE
    Multiply both width and height of the tiled output image by the same amount.

-T, --tile=WIDTHxHEIGHT
    Multiply both width and height of the tiled output image by the given amounts.

-m, --maxshapes=MAXSHAPES
    Set the maximum number of shapes rendered (default: no maximum).

-x, --minimumsize=MINIMUMSIZE
    Set the minimum size for a shape to be rendered in pixels/mm (default: 0.3).

-b, --bordersize=BORDERSIZE
    Set the border size: -1 for a -8 pixel border, 0 for no border, 1 for an 8 pixel border, or 2 for a variable-sized border.

-v, --variation=VARIATION
    Set the variation code (default: random). This code determines what the final image will look like when the input contains non-deterministic rules.

-o, --outputtemplate=NAMETEMPLATE
    Set the output filename. In this filename, %f is replaced by the animation frame number (if any), %v and %V are replaced by the variation code (in lower or upper case, respectively), and %% is replaced by a literal %.

-a, --animate=NUM
    Generate NUM animation frames at 15 fps (only possible using PNG output).

-a, --animate=TIMExFPS
    Generate TIME x FPS animation frames at the specified fps (only possible using PNG output).

-f, --frame=FRAME
    Generate animation FRAME only (only possible using PNG output).

-z, --zoom
    Zoom out during animation, when producing an animation using -a.

-V, --svg
    Generate SVG (vector) output.

-Q, --quicktime
    Generate Quicktime movie output (not available in this Debian package).

--prores
    Generate Quicktime movie output using the ProRes codec instead of the H.264 codec (not available in this Debian package).

-c, --crop
    Crop image output.

-q, --quiet
    Quiet mode; suppress non-error output.

-C, --check
    Check the syntax of the cfdg file, then exit.

-t, --time
    Time output; output the time taken to render the cfdg file.

-d, --cleanup
    Delete old temporary file.

-P, --paramdebug
    Enable debug mode to test if all parameter blocks are deallocated.

-?, --help
    Show summary of options.

SEE ALSO
More information can be found on the Context Free website, at http://contextfreeart.org/.

AUTHOR
Context Free was written by Chris Coyne, John Horigan and Mark Lentczner.

This manual page was written by Bram Senders <bram@luon.net>, for the Debian project (but may be used by others).