PAPS
Section: User Commands (1)
Updated: October 12, 2015
Page Index
NAME
paps - text to PostScript converter using Pango
SYNOPSIS
paps
[
options]
files...
DESCRIPTION
paps
reads an input file and writes a PostScript language or user specified
format rendering of the file to standard output. paps accepts international
text in any locale and provides internationalized text layout including text
shaping and bidirectional text rendering.
If no filename argument is provided, paps reads the standard input. If the
standard input is a terminal, input is terminated by an EOF signal, usually
Control-d.
OPTIONS
paps
follows the usual GNU command line syntax, with long options
starting with two dashes (`-'). A summary of options is included below.
- -h, --help
-
Show summary of options.
- --landscape
-
Landscape output. Default is portrait.
- --columns=cl
-
Format output into cl columns. Default is 1.
- --font=desc
-
Use font based on description desc. Default is "Monospace 12".
The format of the string representation is:
-
"[family-list] [style-options] [size]"
-
where family-list is a comma separated list of families optionally
terminated by a comma, style-options is a whitespace separated list of
words where each word describes one of style, variant, weight, or
stretch, and size is a decimal number for size in points, e.g. "Courier,Monospace Bold Italic 10".
- -o, --output=file
-
Output file. Default is stdout. Output format is set based on
file's extension when --format is not provided.
- --rtl
-
Do right-to-left text layout and align text to the right. Text direction is
detected automatically. Use this option for explicit RTL layout and right
alignment.
- --justify
-
Justify the layout. Stretch complete lines to fill the entire width.
- --wrap=wm
-
Use line wrapping mode wm. Default is word-char.
-
word
-
Wrap lines at word boundaries
-
char
-
Wrap lines at character boundaries
-
word-char
-
Wrap lines at word boundaries, but fall back to character boundaries if there
is not enough space for a full word
- --show-wrap
-
Mark wrapped lines with special characters.
- --paper=ps
-
Choose paper size. Accepted paper sizes are 'legal', 'letter', 'a3' and 'a4'.
Default is A4.
- --gravity=gr
-
Set base glyph orientation. Default is auto.
-
south
-
Glyphs stand upright
-
east
-
Glyphs are rotated 90 degrees clockwise
-
north
-
Glyphs are upside-down
-
west
-
Glyphs are rotated 90 degrees counter-clockwise
-
auto
-
Gravity is resolved from the context
- --gravity-hint=gh
-
Set how horizontal scripts behave in a vertical context. Default is
natural.
-
natural
-
Scripts will take their natural gravity based on the base gravity
and the script
-
strong
-
Always use the base gravity, regardless of the script
-
line
-
For scripts not in their natural direction (e.g. Latin in East gravity), choose
per-script gravity such that every script respects the line progression. This
means, Latin and Arabic will take opposite gravities and both flow
top-to-bottom for example.
- --format=fmt
-
Choose output format. Default is ps.
-
ps
-
PostScript
-
pdf
-
Portable Document Format
-
svg
-
Scalable Vector Graphics
- --bottom-margin=bm
-
Set bottom margin in postscript points (1/72 inch). Default is 36.
- --top-margin=tm
-
Set top margin. Default is 36.
- --left-margin=lm
-
Set left margin. Default is 36.
- --right-margin=rm
-
Set right margin. Default is 36.
- --header
-
Draw page header with document name, date and page number for each page. Header
is not printed by default.
- --title=text
-
Use text as the title string for page header. By default the input
filename or "stdin" is used.
- --markup
-
Interpret input as pango markup. Pango Text Attribute Markup Language allows
marking parts of the text with tags defining additional attributes such as font
face, size, weight, colors or text decoration such as underline or
strikethrough.
- --encoding=enc
-
Assume encoding of the input text is enc. By default the encoding of the
current locale is used (e.g. UTF-8).
- --lpi=lines
-
Set number of lines per inch. This determines the line spacing.
- --cpi=chars
-
Set number of characters per inch. This is an alternative method of specifying
the font size.
- --g-fatal-warnings
-
Make all glib warnings fatal.
EXIT STATUS
The following exit values are returned:
0
-
Successful completion.
1
-
An error occurred.
EXAMPLES
Example 1 Printing UTF-8 text file
The following command can be used to print a file in any of the UTF-8 based
locales if the file is in UTF-8 or compatible codeset.
$ paps en_US_UTF-8.txt
By default paps will print PostScript rendering to standard output. Send the
output to a printer using lp
$ paps en_US_UTF-8.txt | lp
or to a file using redirection or the -o option
$ paps en_US_UTF-8.txt > out.ps
$ paps -o out.ps en_US_UTF-8.txt
Example 2 Specify encoding
To print a file in specific encoding regardless of the current locale setting
use the --encoding option. An example for Japanese EUC encoded input file:
$ paps --encoding eucjp ja_JP_eucjp.txt > out.ps
paps will still use current locale setting to prioritize the available fonts
for current language.
Example 3 Specify locale
Override the LC_ALL environment variable to run paps in a different
locale.
$ LC_ALL=ja_JP.eucjp paps ja_JP_eucjp.txt > out.ps
Here paps will assume the input is in Japanese EUC encoding and will use
Japanese eucjp locale to render the output. If --header is added, the date is
printed in Japanese.
ENVIRONMENT VARIABLES
paps
uses locale environment variables to determine its behavior. The following
categories are used:
LC_CTYPE
-
to assume the encoding of the input. This can be overridden by --encoding.
LC_TIME
-
to format the date for header.
Font selection is also affected by current locale. Example 3 describes how to
run paps in a different locale.
SEE ALSO
fc-match(1), setlocale(3C)
AUTHOR
paps was written by Dov Grobgeld <
dov.grobgeld@gmail.com>.
This manual page was written by Lior Kaplan <kaplan@debian.org>,
for the Debian project (but may be used by others).