5.3 Controlling Pixel Selection

As previously described, pixel selection can be thought of as the first of four stages in the drawing process. The pixels drawn are selected by a combination of the graphics primitive and various members of the graphics context. This section describes those GC elements.

5.3.1 Line Characteristics

Six of the graphics context components are line characteristics. These components obviously affect the graphics primitives that draw lines, but they also affect those that draw unfilled rectangles, arcs, and polygons. Here are the six line characteristics:

line_width

Specifies the width of the line in pixels. Zero means to draw using the server’s fastest algorithm with a line width of one pixel, with some loss of accuracy.

line_style

Specifies whether the line is solid in foreground, dashed in foreground, or alternating foreground and background. Possible values are LineSolid, LineOnOffDash, or LineDoubleDash.

cap_style

Controls the appearance of the ends of a line and in some cases the ends of dashes in a line. Possible values are CapButt, CapNotLast, CapProjecting, and CapRound.

join_style

Controls the appearance of joints between consecutive lines drawn within a single graphics primitive. Possible values are JoinBevel, JoinMiter, and JoinRound.

dashes

Specifies a pattern of dash lengths for custom-designed dashed lines. (Used only if the line_style is LineOnOffDash or LineDoubleDash.)

dash_offset

Specifies the starting point of the dash pattern for custom-designed dashed ...

Get XLIB Programming Manual, Rel. 5, Third Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.