HP Pcl 5 Manual
Have a look at the manual HP Pcl 5 Manual online for free. It’s possible to download the document as PDF or print. UserManuals.tech offer 1114 HP manuals and user’s guides for free. Share the user manual or guide on Facebook, Twitter or Google+.
ENFont Header Format 11-39 Checksum The Checksum field is over bytes 64 through the end of the header. The checksum should contain a value which, when added to the sum of byte 64 through the reserved byte, equals a value which, when divided by 256 (modulo 256 arithmetic), results in a remainder of 0. For example, if the sum = 10,234 then, 10,234 mod 256 = 250. Therefore, the checksum should = 6 (since 250+6 = 256 which would produce 0 [mod 256]). NoteIn the Format 15 Font Header for TrueType Scalable Fonts, this field is located at the end of the Segmented Font Data section immediately following the descriptor data. See “Segmented Font Data” later in this chapter. Copyright This field contains ASCII data and is optional. NoteIn the Format 15 Font Header for TrueType Scalable Fonts, this field is located in the Segmented Font Data section immediately following the descriptor data. See “Segmented Font Data” later in this chapter. Segmented Font Data (Format 15) The Segmented Font Data section immediately follows the main body of a Format 15 Header for TrueType Scalable Fonts. Each segment contains three parts: a Segment Identifier, Segment Size, and Data Segment. The Segmented Font Data section is terminated by the Null Segment. (In the deviant case where no Null Segment is encountered prior to the end of the font header &emdash; as defined in the Font Header command &emdash; the font is invalidated. A font also is invalidated in the event that a Null Segment is encountered too soon.)‘‘ffffffff5ffffffe’’ Font indexed in Unicode and is compatible only with East Europe Latin character sets. Table 11-29 (continued)
11-40 Soft Font CreationEN Table 11-30 below shows the structure of the Segmented Font Data section. Segment Identifier (UI) Each entry in the Segmented Font Data Section has its own unique identification number. The following values are defined: Table 11-30 Segmented Font Data Byte 15 (MSB) 8 7 (LSB) 0 x + 0 First segment, Segment Identifier x + 2 First segment, Segment Size x + 4 MFirst segment, Data Segment M x + 4 + 1st seg size Second segment: Segment Identifier, Size, Data Segment M MM # – 6 Null Segment Identifier (FFFF - hex) # – 4 Null Segment Size (0) # – 2 Reserved Checksum x = Font Descriptor Size. # = Font header length (as defined in Font Header command). Table 11-31 Value Mnemonic Data Segment 17219 CC Character Complement 17232 CP Copyright 18260 GT Global TrueType Data 18758 IF Intellifont Face Data 20545 PA PANOSE Description 22618 XW XWindows Font Name 65535 Null Segment
ENFont Header Format 11-41 Data segments with an unrecognized identifier are ignored. Segment Size (UI) For each entry in the Segmented Font Data section, the Segment Size indicates the number of bytes in the immediately following Data Segment. The size for the Null Segment is 0. Formats of Data Segments AP (Application Support Segment) The definition of this segment is reserved. CC (Character Complement) This field has the same form (i.e., 8 unsigned bytes) and function as does the Character Complement of Format 11 fonts. The Character Complement field should be present with type 10 and 11 (unbound) fonts, but has no role to play in type 0, 1 and 2 (bound) fonts. CP, copyright This field will consist of ASCII data and is optional. GI (Global Intellifont Data) Reserved for future use. GT (Global TrueType Data) This data segment contains first a Table Directory, then five or more tables used by the TrueType font scaler. Every TrueType font needs to have this segment. The Table Directory is patterned after the initial segment of the TrueType font file as described in True Type Font Files. The Table Directory has a 12-byte header and 16 bytes per entry in the Table Directory. The Table Directory is organized in alphabetical order by the 4-byte table names. For each entry, there is an offset relative to the beginning of the soft font’s Global TrueType Data Segment. The Global TrueType Data for every TrueType font entity must contain a head, hhea, hmtx and maxp table. Another required table is the gdir table. When the font header is downloaded, the gdir table should have a size of 0 and an offset of 0. The gdir table is then built in RAM to accommodate the maximum number of glyphs to be downloaded to the given font — with 2 or 4 bytes of offset and 2 bytes of length per glyph. This maximum number of glyphs is obtained from the numGlyphs field of the maxp table. Entries in the gdir table are filled in by the TrueType rasterizer as characters are downloaded.
11-42 Soft Font CreationEN The optional cvt, fpgm and prep tables, as defined in True Type Font Files, typically appear in the Global TrueType Data Segments of hinted TrueType soft fonts, but should not appear in unhinted fonts. IF (Intellifont Face Data) Reserved for future use. PA (PANOSE Description) This data segment of variable length may be used for the purpose of font selection and substitution. Its definition continues to evolve. A 10-field (10-byte) version sufficient for the description of most Latin fonts appears under the OS/2 table inTrue Type Font Files. PF (PS-Compatible Font Name) Reserved for future use. XW (x-windows font name) This ASCII field contains standard X-Windows font names. Checksum The value of this byte, when added to the sum of all of the bytes from byte 64 of the descriptor through the Reserved byte, should equal 0 in modulo 256 arithmetic.
ENFont Header Examples 11-43 Font Header Examples Two examples for downloading a Font Header are provided below; one for a bitmap font and one for an Intellifont scalable font. Bitmap Example To download a bitmap font header for a portrait HP Roman-8, 10 pitch, 12 point, upright, medium, Courier font, with an ID number of one, send: E C*c1D (set Font ID to 1) E C)s#W (# = 64 bytes of font descriptor data + x bytes of optional data) An example of the bitmap header is shown on the following page. Table 11-32 FIELD NAME VALUE DESCRIPTION Font Descriptor Size 64 Bytes Header Format 0 Bitmap Font Format Font Type 1 Eight Bit Style MSB 0 Reserved 0 Baseline Position 40 Cell Width 30 Cell Height 53 Orientation 0 Portrait Spacing 0 Fixed Pitch Symbol Set 277 8U: Roman-8 Pitch 120 Quarter Dots (30.00 Dots) Height 200 Quarter Dots (50.00 Dots) x Height 88 Quarter Dots (22.00 Dots) Appearance Width 0 Normal
11-44 Soft Font CreationEN Intellifont Scalable Example To download an Intellifont scalable header for an HP Roman-8, upright, medium, CG Times scalable font, with an ID number of one, send: E C*c1D (set Font ID to 1) E C)s#W (# = 80 bytes of font descriptor data + x bytes of Global Intellifont data + x bytes of optional data) Style LSB 0 Upright, Normal Width, Solid (0,0,0) Stroke Weight 0 Medium Typeface LSB 3 Body Text Typeface MSB 0 No Font Vendor ID Serif Style 2 Serif Line Quality 0 ∅ Placement 0 ∅ Underline Position -10 ∅ Underline Thickness 3 ∅ Text Height 200 Quarter dots (50.00 Dots) Text Width 120 Quarter Dots (30.00 Dots) First Code 33 ∅ Last Code 254 ∅ Pitch Extended 0 ∅ Height Extended 0 ∅ Cap Height 36713 56.02% of Em Font Number 0 No Font Vendor Number Font Name Courier ....Copyright Statement .... (optional) }= x bytes added to header data ....Application Support ....(optional) }= x bytes added to header data Table 11-32 (continued)
ENFont Header Examples 11-45 Table 11-33 FIELD NAME VALUE DESCRIPTION Descriptor Size 80 Bytes Header Format 10 Scalable Font Format Font Type 1 Eight Bit Style MSB 0 Reserved 0 Baseline Location 5380 Y reference in Design Window Cell Width 0 ..not defined for Intellifont Cell Height 0 ..not defined for Intellifont Orientation 0 ..not defined for scalable fonts Spacing 1 Proportional Symbol Set 277 8U: Roman-8 Pitch 2602 29.63% Em Default HMI Design Height 2000 250 Points * 8 x-Height 4009 45.65% Em, 68.52% Cap Height Appearance Width0Normal Style LSB 0 Upright, Normal Width, Solid (0,0,0) Stroke Weight 0 Medium or Text Weight Typeface LSB 5 Times Roman (generic design family) Typeface MSB 16 Agfa Serif Style 134 Serif, Bracketed (2,6) Quality 0 ..not defined for scalable fonts
11-46 Soft Font CreationEN Placement 0 ..not defined for scalable fonts Underline Position0 ..not defined for scalable fonts Underline Thickness0 ..not defined for scalable fonts Text Height 0 ..not defined for Intellifont Text Width 4391 Width of En Space First code 33 Last Code 273 Compound Pieces Present (n255) Pitch Extended 0 ..not defined for scalable fonts Height Extended 0 ..not defined for scalable fonts Cap Height 5851 66.7% Em Font Number hex 43 01 69 54 Native, Agfa, CG Times (0,C,92500) Font Name “CG Times ” (16 character ACSII field) Scale Factor 8782 X Resolution 2540 Y Resolution 2540 Master Underline Position -1747 Master Underline Thickness 449 OR Threshold 176 Global Italic Angle 0 Global Intellifont Data Size 112 Table 11-33 (continued)
ENFont Header Examples 11-47 ....Global Intellifont Data ....}= 112 bytes added to header data ....Copyright Statement (optional) ....}= x bytes added to header data ....Application Support (optional) ....}= x bytes added to header data Table 11-33 (continued)
11-48 Soft Font CreationEN Character Definitions Following the font header, the individual characters must be defined. Every PCL character definition contains a character descriptor and a body of character data. The character definition always consists of one or more character data blocks. Each character data block begins with its own header. The character data block header always has a size of 2 bytes. The first data block of a character definition must always have a character descriptor immediately after its 2-byte header. Character descriptor/data is downloaded using the Character Definition command preceding every character (see Character Definition Command). NotesA unique character code, using the Character Code command, must be designated prior to the download of a character descriptor and data. If the font being downloaded already contains a character with this code, the existing character is deleted during the download of the character descriptor and data. Unless otherwise specified, inappropriate values in a character descriptor field invalidates the character download process; a character is not created, and the associated descriptor and data are discarded. An undefined printable character is one which is in the printable range of the font type but has no defined pattern. Attempts to print an undefined printable character from a font result in the execution of a Space control code. Character descriptor fields identified as “reserved” should be set to zero. If the total byte count of the character descriptor and data exceeds 32767 bytes, then the remaining data must be sent using the continuation descriptor.