xenial (1) pbmtext.1.gz

Provided by: netpbm_10.0-15.3_amd64 bug

NAME

       pbmtext - render text into a bitmap

SYNOPSIS

       pbmtext [-font fontfile] [-builtin fontname] [-space pixels] [-lspace pixels] [text]

DESCRIPTION

       Takes  the  specified  text,  either  a single line from the command line or multiple lines from standard
       input, and renders it into a bitmap.

       In the bitmap, each line of input is a line of output.  Formatting characters such  as  newline  have  no
       effect on the formatting; like any unprintable character, they turn into spaces.

       The  bitmap  is  just  wide  enough  for  the longest line of text, plus margins, and just high enough to
       contain the lines of text, plus margins.  The left and right margins are twice the width  of  the  widest
       character  in  the  font; the top and bottom margins are the height of the tallest character in the font.
       But if the text is only one line, all the margins are half of this.

OPTIONS

       -font,-builtin
              By default, pbmtext uses a built-in font called bdf (about a 10 point Times-Roman font).  You  can
              use a fixed width font by specifying -builtin fixed.

              You  can  also  specify your own font with the -font flag.  The fontfile is either a BDF file from
              the X window system or a PBM file.

              If the fontfile is a PBM file, it is created in a very specific way.  In  your  window  system  of
              choice, display the following text in the desired (fixed-width) font:

                  M ",/^_[`jpqy| M

                  /  !"#$%&'()*+ /
                  < ,-./01234567 <
                  > 89:;<=>?@ABC >
                  @ DEFGHIJKLMNO @
                  _ PQRSTUVWXYZ[ _
                  { \]^_`abcdefg {
                  } hijklmnopqrs }
                  ~ tuvwxyz{|}~  ~

                  M ",/^_[`jpqy| M

              Do  a  screen  grab  or  window dump of that text, using for instance xwd, xgrabsc, or screendump.
              Convert the result into a pbm file.  If necessary, use pnmcut  to  remove  everything  except  the
              text.   Finally,  run  it  through  pnmcrop  to make sure the edges are right up against the text.
              pbmtext can figure out the sizes and spacings from that.

       -space pixels
              Add pixels pixels of space between characters.  This is in addition to whatever space  surrounding
              characters is built into the font, which is usually enough to produce a reasonable string of text.

              pixels  may be negative to crowd text together, but the author has not put much thought or testing
              into how this works in every possible case, so it might cause disastrous results.

       -B -lspace pixels
              Add pixels pixels of space between lines. This is in addition to whatever space  above  and  below
              characters is built into the font, which is usually enough to produce a reasonable line spacing.

              pixels must be a whole number.

              pixels may be negative to crowd lines together, but the author has not put much thought or testing
              into how this works in every possible case, so it might cause disastrous results.

USAGE

       Often, you want to place text over another image.  One way to do this is with  ppmlabel.   ppmlabel  does
       not give you the font options that pbmtext does, though.

       Another  way  is  to  use pbmtext to create an image containing the text, then use pnmcomp to overlay the
       text image onto your base image.  To make only the text (and not  the  entire  rectangle  containing  it)
       cover  the base image, you will need to give pnmcomp a mask, via its -alpha option.  You can just use the
       text image itself as the mask, as long as you also specify the -invert option to pnmcomp.

       If you want to overlay colored text instead of black, just use ppmchange to change all  black  pixels  to
       the  color  of  your choice before overlaying the text image.  But still use the original black and white
       image for the alpha mask.

       If you want the text at an angle, use pnmrotate on the text image (and alpha mask) before overlaying.

SEE ALSO

       pnmcut(1), pnmcrop(1), pnmcomp(1), ppmchange(1), pnmrotate(1), pbmtextps(1), ppmlabel(1), pbm(5)

AUTHOR

       Copyright (C) 1993 by Jef Poskanzer and George Phillips

                                                 28 January 2001                                      pbmtext(1)