Postscript Operators 'n' and 'o'

ne any1 any2 ne bool
pops two objects from the operand stack and pushes the boolean value false if they are equal, true if not. What it means for objects to be equal is presented in the description of the eq operator.

ERRORS: invalidaccess, stackunderflow

SEE ALSO: eq, ge,

gt, le, lt

Troubleshooting index Back to Postscript index

neg num1 neg num2
returns the negative of num1. The type of the result is the same as the type of num1, unless num1 is the most negative integer, in which case the result is a real.


4.5 neg -> -4.5
-3 neg -> 3

ERRORS: stackunderflow, typecheck


Troubleshooting index Back to Postscript index

newpath - newpath
- initializes the current path to be empty, causing the current point to become undefined.

ERRORS: (none)

SEE ALSO: closepath, stroke,


Troubleshooting index Back to Postscript index

noaccess array noaccess array
packedarray noaccess packedarray
dict noaccess dict
file noaccess file
string noaccess string

reduces the access attribute of an array, packed array, dictionary, file, or string object to none. The value of a noaccess object cannot be executed or accessed directly by PostScript operators. Noaccess objects are of no use to PostScript language programs, but serve certain internal purposes that are not documented in this manual.

For an array, packed array, file, or string, noaccess affects the access attribute only of the object that it returns. If there are other objects that share the same value, their access attributes are unaffected. However, in the case of a dictionary, noaccess affects the value of the object, so all dictionary objects sharing the same dictionary are affected.

ERRORS: invalidaccess, stackunderflow,


SEE ALSO: rcheck, wcheck, xcheck,

readonly, executeonly

Troubleshooting index Back to Postscript index

nocurrentpoint (error)
The current path is empty, and thus there is no current point, but an operator requiring a current point has been executed (for example, lineto,

curveto, currentpoint,

show). The most common cause of this error is neglecting to perform an initial moveto.

SEE ALSO: moveto

Troubleshooting index Back to Postscript index

not bool1 not bool2
int1 not int2

If the operand is a boolean, not returns its logical negation. If the operand is an integer, not returns the bitwise complement (one's complement) of its binary representation.

true not -> false % A complete truth table
false not -> true

52 not -> -53

ERRORS: stackunderflow, typecheck

SEE ALSO: and, or, xor,


Troubleshooting index Back to Postscript index

notify condition notify - DPS
resumes execution of all contexts, if any, that are suspended in a wait for condition.
Ordinarily, notify should be invoked only within the execution of a monitor that references the same lock used in the

wait for condition. This ensures that notifications cannot be lost due to a race between a context executing notify and one executing wait. However, this recommendation is not enforced by the language.

ERRORS: stackunderflow, typecheck

SEE ALSO: wait, monitor,


Troubleshooting index Back to Postscript index

null - null null
pushes a literal null object on the operand stack. null is not an operator; it is a name in systemdict associated with the null object.

ERRORS: stackoverflow

Troubleshooting index Back to Postscript index

nulldevice - nulldevice -
installs the "null device" as the current output device. The null device corresponds to no physical output device and has no raster memory associated with it. Marks placed on the current page by painting operators (for example, show or stroke) are discarded; output operators ( showpage and copypage) do nothing. However, in all other respects the null device behaves like a real raster output device: the graphics operators have their normal side-effects on the graphics state, the character operators invoke the font machinery, and so on.

nulldevice sets the default transformation matrix to be the identity transform
[1.0 0.0 0.0 1.0 0.0 0.0]. A PostScript language program may change this to any other matrix (using setmatrix) if it desires to simulate the device coordinate system of some real device. nulldevice also establishes the clipping path as a degenerate path consisting of a single point at the origin.

The null device is useful for exercising the PostScript interpreter's graphics and font machinery for such purposes as operating on paths, computing bounding boxes for graphical shapes, and performing coordinate transformations using CTM without generating output. Such manipulations should be bracketed by

gsave and grestore so the former device can be reinstated and the other side effects of nulldevice undone.

ERRORS: (none)

SEE ALSO: setpagedevice

Troubleshooting index Postscript Index

or bool 1 bool 2
or bool 3 int1 int2
or int3

If the operands are booleans, or returns their logical disjunction. If the operands are integers, or returns the bitwise "inclusive or" of their binary representations.


true false or -> true
true false or -> true
false true or -> true
false false or -> false

17 5 or -> 21

ERRORS: stackunderflow, typecheck

SEE ALSO: and, not, xor

Troubleshooting index Back to Postscript index

Original file name: PSL2no.html