.TH genpng 1 "LCOV 1.10" 2012\-10\-10 "User Manuals"
.SH NAME
genpng \- Generate an overview image from a source file
.SH SYNOPSIS
.B genpng
.RB [ \-h | \-\-help ]
.RB [ \-v | \-\-version ]
.RS 7
.br
.RB [ \-t | \-\-tab\-size
.IR tabsize ]
.RB [ \-w | \-\-width
.IR width ]
.br
.RB [ \-o | \-\-output\-filename
.IR output\-filename ]
.br
.IR source\-file
.SH DESCRIPTION
.B genpng
creates an overview image for a given source code file of either
plain text or .gcov file format.

Note that the
.I GD.pm
Perl module has to be installed for this script to work
(it may be obtained from
.IR http://www.cpan.org ).

Note also that
.B genpng
is called from within
.B genhtml
so that there is usually no need to call it directly.

.SH OPTIONS
.B \-h
.br
.B \-\-help
.RS
Print a short help text, then exit.
.RE

.B \-v
.br
.B \-\-version
.RS
Print version number, then exit.
.RE

.BI "\-t " tab\-size
.br
.BI "\-\-tab\-size " tab\-size
.RS
Use 
.I tab\-size
spaces in place of tab.

All occurrences of tabulator signs in the source code file will be replaced
by the number of spaces defined by
.I tab\-size
(default is 4).
.RE

.BI "\-w " width
.br
.BI "\-\-width " width
.RS
Set width of output image to 
.I width
pixel.

The resulting image will be exactly
.I width
pixel wide (default is 80).

Note that source code lines which are longer than
.I width
will be truncated.
.RE


.BI "\-o " filename
.br
.BI "\-\-output\-filename " filename
.RS
Write image to
.IR filename .

Specify a name for the resulting image file (default is 
.IR source\-file .png).
.RE
.SH AUTHOR
Peter Oberparleiter <Peter.Oberparleiter@de.ibm.com>

.SH SEE ALSO
.BR lcov (1),
.BR genhtml (1),
.BR geninfo (1),
.BR gendesc (1),
.BR gcov (1)
