Overview
ISO/IEC 9636-3:1991 - "Information technology - Computer graphics - Interfacing techniques for dialogues with graphical devices (CGI) - Functional specification - Part 3: Output" is the formal functional specification for the output side of the CGI family. It defines the functions, output primitives, attributes and controls required to create graphical pictures on devices. Annexes A and B are integral; Annexes C–H are informational.
This standard is essential for achieving device-independent graphical output by specifying consistent primitives and state management for lines, markers, text, fills, images and generalized drawing primitives (GDP).
Key topics and technical requirements
- Output primitives and functions: Detailed abstract specifications for primitives such as POLYLINE, POLYGON, POLYMARKER, TEXT, FILL, IMAGE and GDP (Generalized Drawing Primitive).
- Attributes and bundles: Definition and control of attributes including line type/width/colour, marker type/size/colour, text font/height/orientation/colour, fill interior style/pattern/colour, edge attributes.
- Colour models: Direct and indexed colour modes, background-colour handling and colour specification modes.
- Clipping and rendering: Clipping rules for primitives, rendering pipelines, and behavior of closed figures and image primitives under clipping.
- State management: Output states, bundled and individual attribute handling, state lists and description tables; retrieval functions (e.g., text extent).
- Geometry and allowed latitude: Geometric definitions for primitives (arcs, ellipses, circles) and allowed latitude for implementation variations.
- Inter-part interactions: Defined interactions with other CGI parts - control (ISO/IEC 9636-2), segments (ISO/IEC 9636-4), input (ISO/IEC 9636-5) and raster (ISO/IEC 9636-6).
- Normative vs informational annexes: Annexes A and B must be implemented; C–H provide guidance and examples.
Practical applications
- Ensures interoperability between graphics applications and diverse output devices (displays, plotters, printers).
- Provides a stable functional contract for graphics API designers, device driver developers and middleware implementers who need device-independent rendering semantics.
- Useful in sectors that require precise graphical output: CAD/CAM, scientific visualization, technical drawing, plotting, and embedded HMI systems.
- Helps create consistent behavior for text rendering, vector drawing, fills and bitmapped images across platforms.
Who should use this standard
- Graphics library implementers and API designers
- Device manufacturers and driver developers
- Software architects for CAD, GIS, simulation and visualization tools
- Standards engineers and technical writers documenting graphics interfaces
Related standards
Keywords: ISO/IEC 9636-3, CGI output, computer graphics interface, graphical devices, output primitives, graphics attributes, device-independent graphics.