Reads a PIC program as input; produces an image file (by default in
Portable Network Graphics format) suitable for the Web as output.
Also translates eqn(1) constructs, so it can be used for generating
images of mathematical formulae.
PIC is a rather expressive graphics minilanguage suitable for
producing box-and-arrow diagrams of the kind frequently used in
technical papers and textbooks. The language is sufficiently
flexible to be quite useful for state charts, Petri-net diagrams,
flow charts, simple circuit schematics, jumper layouts, and other
kinds of illustration involving repetitive uses of simple geometric
forms and splines. Because PIC descriptions are procedural and
object-based, they are both compact and easy to modify.
The PIC language is fully documented in Making Pictures With GNU PIC,
a document which is part of the groff(1) distribution.
Your input PIC code should not be wrapped with the .PS and .PE macros
that normally guard it within groff(1) macros.
The output image will be clipped to the smallest possible bounding
box that contains all the black pixels. Older versions of convert(1)
will produce a black-on-white graphic; newer ones may produce a
black-on-transparent graphic. By specifying command-line options to
be passed to convert(1) you can give it a border, force the
background transparent, set the image's pixel density, or perform
other useful transformations.
This program uses pic(1), eqn(1), groff(1), gs(1), and the
ImageMagick convert(1) program. These programs must be installed on
your system and accessible on your $PATH for pic2graph to work.
Run pic(1) and groff(1) in the ‘unsafe’ mode enabling the PIC
macro sh to execute arbitrary commands. The default is to
Specify an output format; the default is PNG (Portable Network
Graphics). Any format that convert(1) can emit is supported.
Change the fencepost characters that delimit eqn(1) directives
($ and $, by default). This option requires an argument, but
an empty string is accepted as a directive to disable eqn(1)
Command-line switches and arguments not listed above are passed to
The directory in which temporary files will be created. If
this is not set pic2graph searches the environment variables
TMPDIR, TMP, and TEMP (in that order). Otherwise, temporary
files will be created in /tmp.
Due to changes in the behavior of ImageMagick convert(1) that are
both forward and backward-incompatible, mismatches between your
pic2graph and convert(1) versions may produce zero-sized or untrimmed
output images. For this version of pic2graph you will need a version
of convert(1) that supports the -trim option; older versions of
pic2graph used -crop 0x0, which no longer has trimming behavior.
This page is part of the groff (GNU troff) project. Information
about the project can be found at
⟨http://www.gnu.org/software/groff/⟩. If you have a bug report for
this manual page, see ⟨http://www.gnu.org/software/groff/⟩. This
page was obtained from the tarball groff-1.22.3.tar.gz fetched from
⟨ftp://ftp.gnu.org/gnu/groff/⟩ on 2016-09-01. If you discover any
rendering problems in this HTML version of the page, or you believe
there is a better or more up-to-date source for the page, or you have
corrections or improvements to the information in this COLOPHON
(which is not part of the original manual page), send a mail to
Groff Version 1.22.3 4 November 2014 PIC2GRAPH(1)