You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Chapter 4. Record Formats<br />
Compressed Character Definition (CCD)<br />
Compressed Character Definition (CCD)<br />
CCD records, which are interchangeable with Character Definition with<br />
Metrics (CDM) records, follow an SFM or FDM record and define each<br />
character in the font. The CCDs contain the bitmap patterns for the<br />
characters. Up to 256 characters can be defined for each FDM and up to<br />
65,536 characters for an SFM.<br />
Byte Position Bytes Field Name Description<br />
4 - 18 IJPDS Formats<br />
Usually, there is one CCD for each character. However, in some fonts, a<br />
continuation CCD is used to divide a character bitmap into two or more<br />
records if it is necessary to limit the size of the records (because of block<br />
length restrictions or other reasons). The character bitmap can be broken<br />
only at the end of a row. When continuation CCDs are used, all fields up<br />
to the bitmap pattern field must be the same in each CCD for the<br />
character except for the continuation bit in the last CCD.<br />
When an SFM or FDM is received, the printer defines null and default<br />
characters in the following manner. When an SFM or FDM is first<br />
processed by the printer, all characters in the font are set as null<br />
characters. If the first CCD received has the default bit set, then the<br />
character in this record is used as the default character. The default<br />
character is used for all undefined characters in the font, including<br />
character 00. Subsequent CCDs then redefine the characters for their<br />
respective character identifiers. If the first CCD does not have the default<br />
character bit set, then all characters remain null until redefined by<br />
subsequent CCDs.<br />
A null character has zero width and height, zero X and Y escapement,<br />
and takes no space when printed.<br />
1-2 2 Record Length The length of this record, in binary, including the record length<br />
field. For example, hex 00 8C specifies a record length of 140<br />
bytes.<br />
3 1 Cyclic Record Count A binary cyclic record count using modulo 256. Each record in the<br />
job is counted, starting with hex 01 for the first record. The 255th<br />
record is hex FF and the 256th record is hex 00. This count is used<br />
to verify record sequence.<br />
4 1 Control Code A binary code that identifies the record type. A value of hex 3D<br />
identifies the CCD record.<br />
5-6 2 Character Identifier A binary code that identifies the character defined in this record.<br />
This is the code that must be used in the input data to access this<br />
character for printing. The range is 0 to 255 for single byte fonts or<br />
0 to 65535 for double-byte fonts.<br />
7 1 Options The bits in position 6 define options available for this character.<br />
Bit 0 (hex 80 bit)= Default character bit<br />
Bit 1= Continuation bit<br />
If bit 0 is set to 1, this character is defined as this font’s default<br />
character. If a default character is defined, it must be the first<br />
character defined in the font, or unexpected results may occur. The<br />
default character becomes the character used for all undefined<br />
characters, including character 00.<br />
If bit 1 is set to 1, the pattern for this character is continued in the<br />
next CCD record. The continuation record looks identical to the<br />
previous record except that the pattern is different and the<br />
continuation bit is off unless the pattern is continued to the next<br />
CCD record.