PostScriptView, PostScriptViews - base classes for external
representation objects that generate PostScript code
#include <Unidraw/Components/psview.h>
PostScriptView is a PreorderView that serves as the abstract base
class for external representation objects for emitting PostScript code. A
PostScriptView's subject is normally a GraphicComp subclass. PostScriptViews
is a subclass of PostScriptView for composite PostScript external views.
- virtual boolean
Emit(ostream&)
- PostScriptView redefines Emit to generate header information. Thus you can
call Emit on any PostScriptView subclass to generate encapsulated
PostScript. Subclasses redefine Definition to generate the PostScript
fragment that defines their basic attributes.
- GraphicComp*
GetGraphicComp()
- Return the subject.
easier for subclasses to generate the PostScript that describes
their appearance. The output conforms to the original idraw PostScript
format.
- virtual void
Comments(ostream&)
- virtual void
PSVersion(ostream&)
- virtual void
Creator(ostream&)
- virtual void
FontNames(ostream&)
- virtual void
Pages(ostream&)
- virtual void
BoundingBox(ostream&)
- The Comments operation generates a standard PostScript comments block.
Comments calls the other operations to generate a complete set of
comments.
- virtual void
Prologue(ostream&)
- virtual void
Version(ostream&)
- virtual void
GridSpacing(ostream&)
- virtual void
Trailer(ostream&)
- Operations that generate global data, procedures, and
idraw-format-specific information.
- virtual void
MinGS(ostream&)
- virtual void
FullGS(ostream&)
- virtual void
TextGS(ostream&)
- virtual void
Brush(ostream&)
- virtual void
FgColor(ostream&)
- virtual void
BgColor(ostream&)
- virtual void
Font(ostream&)
- virtual void
Pattern(ostream&)
- virtual void
Transformation(ostream&)
- Operations that generate graphics state information. All output the
graphics state attribute that their name suggests, with three exceptions:
MinGS outputs a minimal set of graphics state defined by practical graphic
objects, namely a brush, foreground and background colors, a pattern, and
a transformation matrix. TextGS outputs the graphics state required by
textual graphics, including a foreground color, a font, and a
transformation matrix. FullGS generates a full set of graphics state.
- virtual void
SetPSFonts(UList*)
- virtual UList*
GetPSFonts()
- Get and set the list of all PostScript font names required by the
PostScriptView. This set of names appears in a comment near the beginning
of the generated output as required by standard PostScript
conventions.
- virtual void
GetBox(Coord&, Coord&, Coord&, Coord&)
- Return the bounding box of the graphic for which PostScript is being
generated. These values also appear in a standard PostScript comment.
- virtual void
GridSpacing(float&, float&)
- Return the grid spacing, if applicable. Idraw requires this information,
and it is buried in a comment.
- virtual void
BeginProc(ostream&)
- virtual void
EndProc(ostream&)
- Begin and end a scope for defining a graphical object.
- virtual void
ConstProcs(ostream&)
- Generate PostScript procedures containing constant information, such as
the character encoding dictionary, string length limit, etc.
- virtual void
SetGSProcs(ostream&)
- virtual void
SetBrushProc(ostream&)
- virtual void
SetFgColorProc(ostream&)
- virtual void
SetBgColorProc(ostream&)
- virtual void
SetFontProc(ostream&)
- virtual void
SetPatternProc(ostream&)
- Generate PostScript procedures for setting graphics state attributes.
- virtual void
ObjectProcs(ostream&)
- virtual void
BSplineProc(ostream&)
- virtual void
CircleProc(ostream&)
- virtual void
ClosedBSplineProc(ostream&)
- virtual void
EllipseProc(ostream&)
- virtual void
LineProc(ostream&)
- virtual void
MultiLineProc(ostream&)
- virtual void
PolygonProc(ostream&)
- virtual void
RectangleProc(ostream&)
- virtual void
TextProc(ostream&)
- Generate PostScript procedures for instantiating basic graphical
objects.
- virtual void
MiscProcs(ostream&)
- virtual void
DefinitionProc(ostream&)
- virtual void
FillProc(ostream&)
- virtual void
StrokeProc(ostream&)
- virtual void
ShowProc(ostream&)
- virtual void
PatternProc(ostream&)
- virtual void
MinMaxProcs(ostream&)
- virtual void
MidpointProc(ostream&)
- virtual void
ThirdpointProc(ostream&)
- virtual void
SubsplineProc(ostream&)
- virtual void
StoreVerticesProc(ostream&)
- MiscProcs encapsulates calls to the subsequent PostScript
procedure-generating operations shown above. DefinitionProc generates
PostScript code that declares a procedure. FillProc and StrokeProc fill
and stroke the path that a graphical object defines. ShowProc fine-tunes a
text object's position. PatternProc creates a PostScript rendition of a
pattern. MinMaxProcs define min and max functions. MidpointProc and
ThirdpointProc calculate the point midway and one-third the way between
two points, respectively. SubsplineProc breaks the vertices defining a
spline into smaller pieces to allow approximating the spline with Bezier
curves. Finally, StoreVerticesProc stores a set of vertices in
arrays.
- PSFont*
GetFont(UList*)
- PostScriptView*
View(UList*)
- Convenience functions that return the PSFont and PostScriptView in UList
elements, respectively.
- PostScriptView*
CreatePSView(GraphicComp*)
- Create the appropriate PostScriptView subclass for the given GraphicComp.
The relationship between subjects, views, and view categories is encoded
in their class identifiers. See classes(3U) for more information on class
identifiers and view categories.
ExternView(3U), GraphicComp(3U), GraphicView(3U), UList(3U),
classes(3U), idraw(1I), pspaint(3U)