2012
Table Of Contents
- Contents
- Basic Customization
- Custom Linetypes
- Custom Hatch Patterns
- User Interface Customization
- DIESEL
- Command Scripts
- Introduction to Programming Interfaces
- Shapes and Shape Fonts
- Overview of Shape Files
- Create Shape Definition Files
- Shape Descriptions
- Vector Length and Direction Code
- Special Codes
- Use Special Codes
- Codes 0, 1, and 2: End of Shape and Draw Mode Control
- Codes 3 and 4: Size Control
- Codes 5 and 6: Location Save/Restore
- Code 7: Subshape
- Codes 8 and 9: X-Y Displacements
- Code 00A: Octant Arc
- Code 00B: Fractional Arc
- Codes 00C and 00D: Bulge-Specified Arcs
- Code 00E: Flag Vertical Text Command
- Text Font Descriptions
- Sample Files
- Big Font Descriptions
- Unicode Font Descriptions
- Superscripts and Subscripts in SHX Files
- Index
The polyarc code (00D, or 13) is followed by 0 or by more arc segment triples,
and is terminated by a (0,0) displacement. Note that no bulge is specified after
the final displacement. For example, the letter S might be defined by the
following sequence:
13,(0,5,127),(0,5,-127),(0,0)
Zero bulge segments are useful within polyarcs to represent straight segments;
they are more efficient than terminating the polyarc, inserting one straight
segment, and then starting another polyarc.
The number -128 cannot be used in arc segment and polyarc definitions.
Code 00E: Flag Vertical Text Command
Special code 00E (14) is used only in dual-orientation text font descriptions,
where the font is used in both horizontal and vertical orientations.
When this special code is encountered in a character definition, the next code
is either processed or skipped, depending on orientation. If the orientation is
vertical, the next code is processed; if it is horizontal, the next code is skipped.
In horizontal text, the start point for each character is the left end of the
baseline. In vertical text, the start point is assumed to be the top center of the
character. At the end of each character, a pen-up segment is normally drawn
to position to the next character's start point. For horizontal text, it is to the
right; for vertical text, it is downward. The special 00E (14) code is used
primarily to adjust for differences in start points and endpoints, permitting
the same character shape definition to be used both horizontally and vertically.
For instance, the following definition of an uppercase D could be used in
either horizontal or vertical text.
*68,22,ucd
2,14,8,(-2, 6),1,030,012,044,016,038,2,010,1,06C,2,050,
14,8,(-4,-3),0
116 | Chapter 8 Shapes and Shape Fonts