File: web2c.info, Node: pktype invocation, Next: gftype invocation, Prev: pktogf invocation, Up: Font utilities
| Use Case | Command | Description |
|---|---|---|
| 📄 Read PK file as human-readable text | pktype cmr10.600pk |
Transliterates a packed font (PK) bitmap file to plain text on stdout. |
| ✅ Validate a PK file | pktype fontname.600pk |
If pktype reads the file without error, the PK file is valid. |
| 🔍 Check specific character details | pktype fontname.600pk | grep 'Character = 75' |
Extract information for a particular character (e.g., decimal code 75 = 'K'). |
pktype PKNAME.DPI[pk]
The font PKNAME is searched for in the usual places (*note (kpathsea)Glyph lookup::). To see all the relevant paths, set the environment variable KPATHSEA_DEBUG to -1 before running the program.
The suffix pk is supplied if not already present. This suffix is not an extension; no '.' precedes it: for instance, cmr10.600pk.
The translation is written to standard output.
The only options are -help and -version (*note Common options::).
As an example of the output, here is the (abridged) translation of the letter 'K' in cmr10, as rendered at 600dpi with the mode ljfour from ftp://ftp.tug.org/tex/modes.mf.
955: Flag byte = 184 Character = 75 Packet length = 174
Dynamic packing variable = 11
TFM width = 815562 dx = 4259840
Height = 57 Width = 57 X-offset = -3 Y-offset = 56
[2]23(16)17(8)9(25)11(13)7(27)7(16)7(28)4(18)7(28)2(20)7(27)...
...
(14)9(24)12(5)[2]23(13)21
955 — The byte position in the file where this character starts.Flag byte, Dynamic packing variable — Related to the packing for this character; see the source code.Character — The character code, in decimal.Packet length — The total length of this character definition, in bytes.TFM width — The device-independent (TFM) width of this character. It is 2^24 times the ratio of the true width to the font's design size.dx — The device-dependent width, in "scaled pixels", i.e., units of horizontal pixels times 2^16.Height, Width — The bitmap height and width, in pixels.X-offset, Y-offset — Horizontal and vertical offset from the upper left pixel to the reference (origin) pixel for this character, in pixels (right and down are positive). The "reference pixel" is the pixel that occupies the unit square in Metafont; the Metafont reference point is the lower left hand corner of this pixel. Put another way, the x-offset is the negative of the left side bearing; the right side bearing is the horizontal escapement minus the bitmap width plus the x-offset.[2]23(16)... — Finally, run lengths of black pixels alternate with parenthesized run lengths of white pixels, and brackets indicate a repeated row.Generated by phpman v4.9.26-1-g511901d · Markdown · JSON · MCP Author: Che Dong Under GNU General Public License
2026-07-31 08:07 @216.73.217.152
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Enhanced by LLM: deepseek-v4-flash / taotoken.net / www.chedong.com - original format