---
name: "pspaint"
section: "3"
platform: "linux"
package: "ivtools-dev"
version: "1.1.3-4"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/pspaint"
---

# pspaint(3)

graphics state objects with added PostScript information

## NAME

PSBrush, PSColor, PSFont, PSPattern - graphics state objects with added PostScript information

## SYNOPSIS

**#include \<Unidraw/Graphic/pspaint.h\>**

## DESCRIPTION

PSBrush, PSColor, PSFont, and PSPattern are subclasses of Brush, Color, Font, and Pattern, respectively, that store added information needed to generate idraw-compatible PostScript.  Unidraw's structured graphics objects use these subclasses exclusively.

## PSBRUSH PUBLIC OPERATIONS

- **PSBrush()**

  - **PSBrush(int pattern, int width)**

  Create an undefined PSBrush (the parameterless constructor) or one having the specified line pattern and width.  Structured graphics having an undefined brush will not render their stroked portions.

- **int GetLinePattern()**

  - **int Width()**

  Return constructor-specified brush parameters.

- **boolean None()**

  Return *true* if this is an undefined brush.

- **const int\* GetDashPattern()**

  - **int GetDashPatternSize()**

  - **int GetDashOffset()**

  Return values required to characterize the brush in PostScript.  The equivalent PostScript dash pattern is computed from the brush's line pattern.

## PSBRUSH PROTECTED OPERATIONS

- **void CalcDashPat(int)**

  Compute the equivalent PostScript dash pattern from the line pattern specified in the constructor.

## PSCOLOR PUBLIC OPERATIONS

- **PSColor(**

  - **Color\_Intensity, Color\_Intensity, Color\_Intensity,**

  - **const char\* name**

  - **)**

  Create a PSColor, supplying color intensity information and a name to associate with the intensities.  The name is used solely to generate idraw-compatible PostScript.

## PSFONT PUBLIC OPERATIONS

- **PSFont(**

  - **const char\* name, const char\* PS\_name, const char\* PS\_size**

  - **)**

  Construct a PSFont, supplying the window-system-specified font name and the corresponding PostScript font name and its size.

- **const char\* GetName()**

  - **const char\* GetPrintFont()**

  - **const char\* GetPrintSize()**

  - **const char\* GetPrintFontAndSize()**

  Return constructor-supplied parameters.  GetPrintFontAndSize returns the concatenation of the PostScript font name and its size, with a space interposed for legibility.

- **int GetLineHt()**

  Return an integer version of the PostScript font's size (as supplied to the constructor).

## PSPATTERN PUBLIC OPERATIONS

- **PSPattern()**

  - **PSPattern(int dither, float graylevel)**

  - **PSPattern(const int\* pattern, int)**

  Create an undefined PSPattern (the parameterless constructor), or one having specific dither and graylevel values, or one that replicates a pattern defined by the given array.  Structured graphics having an undefined pattern will not render their filled portions.

- **boolean None()**

  Return *true* if this is an undefined pattern.

- **float GetGrayLevel()**

  Return the graylevel that the pattern approximates, if one was specified in the constructor.

- **const int\* GetData()**

  - **int GetSize()**

  Return the array that defines the replicated pattern and its size, if the pattern was constructed with one.

## SEE ALSO

 idraw(1I), pspaint(3I), and the InterViews 3.1 reference manual
