summaryrefslogtreecommitdiffstats
path: root/upstream/fedora-rawhide/man1/ppmdraw.1
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
commitfc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch)
treece1e3bce06471410239a6f41282e328770aa404a /upstream/fedora-rawhide/man1/ppmdraw.1
parentInitial commit. (diff)
downloadmanpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz
manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'upstream/fedora-rawhide/man1/ppmdraw.1')
-rw-r--r--upstream/fedora-rawhide/man1/ppmdraw.1294
1 files changed, 294 insertions, 0 deletions
diff --git a/upstream/fedora-rawhide/man1/ppmdraw.1 b/upstream/fedora-rawhide/man1/ppmdraw.1
new file mode 100644
index 00000000..d75d5b60
--- /dev/null
+++ b/upstream/fedora-rawhide/man1/ppmdraw.1
@@ -0,0 +1,294 @@
+\
+.\" This man page was generated by the Netpbm tool 'makeman' from HTML source.
+.\" Do not hand-hack it! If you have bug fixes or improvements, please find
+.\" the corresponding HTML page on the Netpbm website, generate a patch
+.\" against that, and send it to the Netpbm maintainer.
+.TH "Ppmdraw User Manual" 0 "22 June 2005" "netpbm documentation"
+
+.SH NAME
+ppmdraw - draw lines, text, etc on a PPM image
+
+.UN synopsis
+.SH SYNOPSIS
+
+\fBppmdraw\fP
+
+{
+\fB-script=\fP\fIscript\fP
+|
+\fB-scriptfile=\fP\fIfilename\fP
+}
+[\fB-verbose\fP]
+
+[\fIppmfile\fP]
+.PP
+All options can be abbreviated to their shortest unique prefix.
+You may use two hyphens instead of one to designate an option. You
+may use either white space or an equals sign between an option name
+and its value.
+
+
+.UN description
+.SH DESCRIPTION
+.PP
+This program is part of
+.BR "Netpbm" (1)\c
+\&.
+.PP
+\fBppmdraw\fP draws lines, shapes, text, etc. on a PPM image. It is
+essentially an easy-to-program front end to \fBlibnetpbm\fP's
+"ppmd" subroutines. It lets you create a human-friendly
+script to describe the drawing rather than write a C program.
+.PP
+You supply drawing instructions with a script, which you supply either
+in a file named by a \fB-scriptfile\fP option or as the value of a
+\fB-script\fP option. Here is an example script:
+
+.nf
+\f(CW
+setpos 50 50;
+text_here 10 30 "hello";
+setcolor black;
+text_here 10 0 "there";
+line_here 5 20;
+\fP
+
+.fi
+.PP
+This example starts at Column 50, Row 50 of the input image and
+writes the word "hello" there in 10 pixel high white letters
+at a 30 degree angle up from horizontal. Then, from where that leaves
+off, the script writes "there" in 10 pixel high black
+letters horizontally. Finally, it draws a black line to a point 5
+pixels over and 20 pixels down from the end of "there."
+.PP
+If you don't specify \fIppmfile\fP, \fBppmdraw\fP reads its input
+PPM image from Standard Input.
+.PP
+The output image goes to Standard Output.
+.PP
+\fBppmdraw\fP works on multi-image streams. It executes the same
+script on each input image and produces an output stream with one image
+for each input image. But before Netpbm 10.32 (February 2006),
+\fBppmdraw\fP ignored every image after the first.
+.PP
+If you just want to add a single line of text to an image,
+\fBppmlabel\fP may be more what you want.
+
+
+.UN options
+.SH OPTIONS
+.PP
+In addition to the options common to all programs based on libnetpbm
+(most notably \fB-quiet\fP, see
+.UR index.html#commonoptions
+ Common Options
+.UE
+\&), \fBppmdraw\fP recognizes the following
+command line options:
+
+
+
+.TP
+\fB-script=\fP\fIscript\fP
+This option gives the script. See
+.UR #script
+Script
+.UE
+\&.
+.sp
+You may not specify both \fB-script\fP and \fB-scriptfile\fP.
+
+.TP
+\fB-scriptfile=\fP\fIfilename\fP
+This option names a file that contains the script. \fB-\fP
+means Standard Input.
+.sp
+You may not specify both \fB-script\fP and \fB-scriptfile\fP.
+.sp
+You may not specify \fB-\fP (Standard Input) for both
+\fB-scriptfile\fP and the input image file.
+
+
+
+
+.UN script
+.SH SCRIPT
+.PP
+The heart of \fBppmdraw\fP function is its script. The script is
+a character stream. The stream consists of commands. Commands are
+separated by semicolons. White space is regarded just like in C: Any
+contiguous stretch of unquoted white space is equivalent to a single
+space character. Note that this means newlines have no particular
+significance.
+.PP
+A command is composed of tokens, separated from each other by
+white space. To write a token that contains white space, enclose
+it in double quotes. Everything between two matched quotation marks
+is one token.
+.PP
+The first token of a command is the verb, which determines the
+basic function of the command. The rest of the tokens of the command
+are arguments, the meaning of which depends upon the verb. The
+following list gives all the valid verbs, and for each its meaning and
+its arguments.
+.PP
+Many command have arguments that specify a position on the canvas,
+which you specify by row and column. Row 0 is the top row. Column 0
+is the leftmost column. You may specify negative numbers (but such
+a position would necessarily be off the canvas).
+.PP
+Your drawing instructions may involve positions not on the canvas.
+But any pixels you draw there just get discarded.
+
+
+.TP
+setpos
+Set the "current position" in the image. This affects
+where subsequent commands draw things. The 2 arguments are the column
+and row number.
+.sp
+At the start of the script, the current position is (0,0).
+
+.TP
+setlinetype
+The 1 argument is "normal" or "nodiag.". This
+effects a \fBppmd_setlinetype()\fP call. Further details are not yet
+documented.
+
+.TP
+setlineclip
+This effects a \fBppmd_setlineclip()\fP call. Not yet documented.
+
+.TP
+setcolor
+This sets the "current color", which determines the color
+in which subsequent drawing commands draw. Before the first
+\fBsetcolor\fP, the current color is white.
+.sp
+There is one argument. It specifies the color as described for the
+.UR libnetpbm_image.html#colorname
+argument of the \fBpnm_parsecolor()\fP library routine
+.UE
+\&.
+
+.TP
+setfont
+This sets the "current font", which determines the font
+in which subsequent text drawing commands draw. Before the first
+\fBsetfont\fP, the current font is a built in font called
+"standard."
+.sp
+The argument of this command is a file name. It is the name of a
+Netpbm PPMD font file.
+.sp
+A Netpbm PPMD font file typically has a name that ends in
+".ppmdfont" and its first 8 bytes are the ASCII encoding of
+"ppmdfont".
+.sp
+There is only one of these fonts as far as we know. It is distributed with
+Netpbm as the file \fBstandard.ppmdfont\fP, but you don't need to use that
+file because the same font is built into the Netpbm library and is the
+default. If you want to make a new font, you can find the format of a
+ppmdfont file in the Netpbm interface header file \fBppmdfont.h\fP, but
+you'll have to make your own tools to build it. The program \fBppmdmkfont\fP
+generates \fBstandard.ppmdfont\fP, so you can use that as an example.
+
+.TP
+line
+This draws a one pixel wide line in the current color. The 4 arguments
+are: starting column, starting row, ending column, ending row.
+.sp
+This command does not affect the current position.
+
+.TP
+line_here
+This is like \fBline\fP, except it works in a more relative way.
+.sp
+The line starts at the current point. The two arguments are the
+rightward and downward displacement from there to the terminal point.
+The command moves the current position to the terminal point after drawing.
+
+.TP
+spline3
+This draws a spline in the current color between 2 points, using a third
+as a control point. It approximates a cubic spline segment.
+.sp
+The shape of the curve is such that it passes through the specified
+endpoints, and lines tangent to the curve at those endpoints intersect at the
+control point. Controlling the tangents allows you to connect this curve to
+other curves generated the same way without having corners at the connection
+points.
+.sp
+The 6 arguments are the starting point column, starting point row, control
+point column, control point row, ending point column, and ending point row.
+.sp
+This command does not affect the current position.
+
+.TP
+circle
+This command draws a circle in the current color. The three
+arguments are the column number and row number of the center of the
+circle and the radius of the circle in pixels.
+
+.TP
+filledrectangle
+This command draws a rectangle filled with the current color.
+
+The 4 arguments are the column and row numbers of the upper left corner
+of the rectangle, the width of the rectangle, and the height of the
+rectangle.
+
+.TP
+text
+This command draws text in the current color in the built-in font.
+The 5 arguments are:
+
+
+.IP \(bu
+column number of starting point of baseline
+.IP \(bu
+row number of starting point of baseline
+.IP \(bu
+height of characters, in pixels
+.IP \(bu
+angle of baseline in degrees elevated from the horizontal
+.IP \(bu
+text
+
+.sp
+Note that if your text contains white space, you'll have to use double
+quotes to cause it to be a single token.
+
+.TP
+text_here
+This is like \fBtext\fP, except that the baseline starts at
+the current position and the command updates the current position to the
+other end of the baseline after it draws.
+.sp
+Bear in mind that a script starts with the current position in the
+top line, so if you leave it there, only the bottom line of your text
+will be within the image!
+
+
+
+.UN history
+.SH HISTORY
+.PP
+\fBppmdraw\fP was new in Netpbm 10.29 (August 2005).
+
+
+.UN seealso
+.SH SEE ALSO
+.BR "ppmlabel" (1)\c
+\&,
+.BR "ppm" (1)\c
+\&
+.BR "libnetpbm_draw" (1)\c
+\&
+.SH DOCUMENT SOURCE
+This manual page was generated by the Netpbm tool 'makeman' from HTML
+source. The master documentation is at
+.IP
+.B http://netpbm.sourceforge.net/doc/ppmdraw.html
+.PP \ No newline at end of file