PSWRAP(1) UNIX Programmer's Manual PSWRAP(1)
NAME
pswrap - creates C procedures from segments of PostScript
language code
SYNOPSIS
pswrap [ -apr ] [ -o outputCfile ] [ -h outputHfile ] [ -s
maxstring ] inputfile
DESCRIPTION
pswrap reads input from inputfile and creates C-callable
procedures, known as wraps, that send PostScript language
code to the PostScript interpreter. inputfile contains seg-
ments of PostScript language code wrapped with a C-like pro-
cedure syntax.
Wraps are the most efficient way for an application to com-
municate with the PostScript interpreter. For complete docu-
mentation of pswrap and the language it accepts, see "pswrap
Reference Manual" in Programming the Display PostScript Sys-
tem with X.
OPTIONS
inputfile
A file that contains one or more wrap definitions.
pswrap transforms the definitions in inputfile into C
procedures. If no input file is specified, the standard
input (which can be redirected from a file or pipe) is
used. The input file can include text other than wrap
definitions. pswrap converts wrap definitions to C pro-
cedures and passes the other text through unchanged.
Therefore, it is possible to intersperse C-language
source code with wrap definitions in the input file.
Note: Although C code is allowed in a pswrap input
file, it is not allowed within a wrap body. In particu-
lar, no CPP macros (for example, #define) are allowed
inside a wrap.
-a Generates ANSI C procedure prototypes for procedure
definitions in outputCfile and, optionally, outputH-
file. The -a option allows compilers that recognize the
ANSI C standard to do more complete type checking of
parameters. The -a option also causes pswrap to gen-
erate const declarations.
Note: ANSI C procedure prototype syntax is not recog-
nized by most non-ANSI C compilers, including many com-
pilers based on the Portable C Compiler. Use the -a
option only in conjunction with a compiler that con-
forms to the ANSI C Standard.
Adobe Systems 4 Apr 1994 1
PSWRAP(1) UNIX Programmer's Manual PSWRAP(1)
-h outputHFile
Generates a header file that contains extern declara-
tions for non-static wraps. This file can be used in
#include statements in modules that use wraps. If the
-a option is specified, the declarations in the header
file are ANSI C procedure prototypes. If the -h option
is omitted, a header file is not produced.
-o outputCFile
Specifies the file to which the generated wraps and
passed-through text are written. If omitted, the stan-
dard output is used. If the -a option is also speci-
fied, the procedure definitions generated by pswrap are
in ANSI C procedure prototype syntax.
-p Specifies that strings passed by wraps are padded so
that each data object begins on a long-word (4-byte)
boundary. This option allows wraps to run on architec-
tures that restrict data alignment to 4-byte boundaries
and improves performance on some other architectures.
-r Generates reentrant code for wraps shared by more than
one process (as in shared libraries). Reentrant code
can be called recursively or by more than one thread.
The -r option causes pswrap to generate extra code, so
use it only when necessary.
-s maxstring
Sets the maximum allowable length of a PostScript
string object or hexadecimal string object in the wrap
body input. A syntax error is reported if a string is
not terminated with ) or > within maxstring characters.
maxstring cannot be set lower than 80; the default is
200.
SEE ALSO
Programming the Display PostScript System with X (Addison-
Wesley Publishing Company, Inc., 1993).
AUTHOR
Adobe Systems Incorporated
NOTES
PostScript and Display PostScript are trademarks of Adobe
Systems Incorporated which may be registered in certain jur-
isdictions.
Copyright (c) 1988-1994 Adobe Systems Incorporated. All
rights reserved.
Adobe Systems 4 Apr 1994 2