Thread View: comp.lang.postscript
1 messages
1 total messages
Started by James Do
Fri, 02 Oct 1992 02:36
Re: Useful fonttable program with character names
Author: James Do
Date: Fri, 02 Oct 1992 02:36
Date: Fri, 02 Oct 1992 02:36
428 lines
21180 bytes
21180 bytes
I'd like to share my additions to Fredric Ihren's useful PS program, in
order to print other code tables and fonts. The Fontographer code table
may be particularly useful to those who love that Macintosh product.
Enjoy! (With thanks, of course, to Fredric Ihren and Gisle Hannemyr!)
----- Begin Included Text --------------------------------------------
%!PS-Adobe-2.0
%%Title: fonttable.ps
%%Created: 23sep92 fred@nada.kth.se
%%Modified: 30sep92 jdo@sjc.mentorg.com - add GreyString to fonttable;
%% add MacFontographer, and VSCII (8-bit Viet Nam national Standard)
%%DocumentFonts: Times-Roman Times-Bold Times-Italic Helvetica
%%BoundingBox: 42 70 572 756
%%Pages: 1
%%EndComments
% This program prints the 16x16 encoding table of a font.
% The character names in the encoding vector are also included.
%
% Layout based on a program by Gisle Hannemyr (gisle@ifi.uio.no)
% This program is in the public domain.
% The definitions for the different encodings are not necessary
% and can be removed.
/mm { 72 25.4 div mul } bind def
/cellx 11 mm def % x-size of character cell.
/celly 13 mm def % y-size of character cell.
/notdefgray 0.96 def % grayshade for undefined char.
/x0 15 mm def % position for left side of table
/y0 25 mm def % position for bottom of table
% *** Fonts ***
/TR /Times-Roman findfont def
/TB /Times-Bold findfont def % for title
/TI /Times-Italic findfont def % for hex and oct
/TRS TR 1.6 mm scalefont def % small font for character names
%%<<< INSERT font file between this line and the next, if needed >>>%%
%!PS-AdobeFont-1.0: MyFnt 001.000 ...
%%<<< INSERT font file between this line and the previous >>>%%
% *** Encodings ***
/ISOLatin1Encoding [
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash
/zero/one/two/three/four/five/six/seven/eight
/nine/colon/semicolon/less/equal/greater/question
/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z
/bracketleft/backslash/bracketright/asciicircum/underscore
/grave/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z
%^^^^^/quoteleft in Adobe "PostScript Language Reference Manual"
/braceleft/bar/braceright/asciitilde/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/dotlessi/grave/acute/circumflex/tilde/macron/breve/dotaccent
/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut/ogonek/caron
% previous 2 lines as in Adobe "PostScript Language Reference Manual"
/space/exclamdown/cent/sterling/currency/yen/brokenbar/section
/dieresis/copyright/ordfeminine/guillemotleft/logicalnot/hyphen
/registered/macron/degree/plusminus/twosuperior/threesuperior/acute
/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
/guillemotright/onequarter/onehalf/threequarters/questiondown
/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis
/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply
/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls
/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide
/oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis ] def
/ISOLatin2Encoding [
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash
/zero/one/two/three/four/five/six/seven/eight
/nine/colon/semicolon/less/equal/greater/question
/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z
/bracketleft/backslash/bracketright/asciicircum/underscore
/grave/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z
/braceleft/bar/braceright/asciitilde/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/dotlessi/grave/acute/circumflex/tilde/macron/breve/dotaccent
/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut/ogonek/caron
/space/Lacute/ogonek/Lslash/currency/Lcaron/Sacute/section
/dieresis/Scaron/Scedilla/Tcaron/Zacute/hyphen/Zcaron/Zdot
/degree/lacute/breve/lslash/acute/lcaron/sacute/caron
/cedilla/scaron/scedilla/tcaron/zacute/dotaccent/zcaron/zdot
/Agrave/Aacute/Acircumflex/Abreve/Adieresis/Aogonek/Cacute/Ccedilla
/Ccaron/Eacute/Eogonek/Edieresis/Ecaron/Iacute/Icircumflex/Dcaron
/Eth/Nacute/Ncaron/Oacute/Ocircumflex/Ohungar/Odieresis/Racute
/Rcaron/Udot/Uacute/Uhungar/Udieresis/Yacute/Jmacron/germandbls
/agrave/aacute/acircumflex/abreve/adieresis/aogonek/cacute/ccedilla
/ccaron/eacute/eogonek/edieresis/ecaron/iacute/icircumflex/dcaron
/dslash/nacute/ncaron/oacute/ocircumflex/ohungar/odieresis/racute
/rcaron/udot/uacute/uhungar/udieresis/yacute/tcedilla/hungarumlaut ] def
/WinLatin1Encoding [
% used by Windows; like ISOLatin1 except for:
% 39 = quoteright (quotesingle in ISOLatin1)
% 96 = grave (quoteleft [grave?] in ISOLatin1)
% 130-159 (special control characters in ISOLatin1)
%
% The characters on position 0-5 are there because Apple LW need all
% subcharacters of composite characters in current encoding (illogical,
% but thats the case); otherwise an "invalid font" will occur.
/caron/circumflex/tilde/ring/grave/dotlessi/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash
/zero/one/two/three/four/five/six/seven/eight
/nine/colon/semicolon/less/equal/greater/question
/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z
/bracketleft/backslash/bracketright/asciicircum/underscore
/grave/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z
/braceleft/bar/braceright/asciitilde/.notdef
/.notdef/.notdef/quotesinglbase/florin/quotedblbase/ellipsis/dagger
/daggerdbl
/.notdef/perthousand/Scaron/guilsinglleft/OE/.notdef/.notdef/.notdef
/.notdef/quoteleft/quoteright/quotedblleft/quotedblright/bullet/endash
/emdash
/.notdef/trademark/scaron/guilsinglright/oe/ydieresis/.notdef/.notdef
/space/exclamdown/cent/sterling/currency/yen/brokenbar/section
/dieresis/copyright/ordfeminine/guillemotleft/logicalnot/hyphen
/registered/macron
/degree/plusminus/twosuperior/threesuperior/acute/mu/paragraph
/periodcentered
/cedilla/onesuperior/ordmasculine/guillemotright/onequarter/onehalf
/threequarters/questiondown
/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis
/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply
/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls
/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide
/oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis ] def
/MacEncoding [
/NUL/SOH/STX/ETX/EOT/ENQ/ACK/BEL/BS/HT/LF/VT/FF/CR/SO/SI
/DLE/DC1/DC2/DC3/DC4/NAK/SYN/ETB/CAN/EM/SUB/ESC/FS/GS/RS/US
/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash
/zero/one/two/three/four/five/six/seven/eight
/nine/colon/semicolon/less/equal/greater/question
/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z
/bracketleft/backslash/bracketright/asciicircum/underscore
/grave/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z
/braceleft/bar/braceright/asciitilde/DEL
/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis/Udieresis/aacute
/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute/egrave
/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde/oacute
/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex/udieresis
/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls
/registered/copyright/trademark/acute/dieresis/notequal/AE/Oslash
/infinity/plusminus/lessequal/greaterequal/yen/mu/partialdiff/summation
/product/pi/integral/ordfeminine/ordmasculine/Omega/ae/oslash
/questiondown/exclamdown/logicalnot/radical/florin/approxequal/Delta
/guillemotleft
/guillemotright/ellipsis/nbspace/Agrave/Atilde/Otilde/OE/oe
/endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide
/lozenge
/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright/fi/fl
/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand
/Acircumflex/Ecircumflex/Aacute
/Edieresis/Egrave/Iacute/Icircumflex/Idieresis/Igrave/Oacute/Ocircumflex
/apple/Ograve/Uacute/Ucircumflex/Ugrave/dotlessi/circumflex/tilde
/macron/breve/dotaccent/ring/cedilla/hungarumlaut/ogonek/caron ] def
/MacFontographerEncoding [
/NUL/Eth/eth/Lslash/lslash/Scaron/scaron/Yacute/yacute/HT/LF
/Thorn/thorn/CR/Zcaron/zcaron/DLE/DC1/DC2/DC3/DC4
/onehalf/onequarter/onesuperior/threequarters/threesuperior/twosuperior
/brokenbar/minus/multiply/RS/US
/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quotesingle
/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two
/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater
/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft
/backslash/bracketright/asciicircum/underscore/grave/a/b/c/d/e/f/g/h/i/j/k/l/m
/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde/DEL
/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis/Udieresis/aacute/agrave
/acircumflex/adieresis/atilde/aring/ccedilla/eacute/egrave/ecircumflex
/edieresis/iacute/igrave/icircumflex/idieresis/ntilde/oacute/ograve
/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex/udieresis/dagger/degree
/cent/sterling/section/bullet/paragraph/germandbls/registered/copyright
/trademark/acute/dieresis/notequal/AE/Oslash/infinity/plusminus/lessequal
/greaterequal/yen/mu/partialdiff/summation/product/pi/integral/ordfeminine
/ordmasculine/Omega/ae/oslash/questiondown/exclamdown/logicalnot/radical
/florin/approxequal/Delta/guillemotleft/guillemotright/ellipsis/nbspace
/Agrave/Atilde/Otilde/OE/oe/endash/emdash/quotedblleft/quotedblright/quoteleft
/quoteright/divide/lozenge/ydieresis/Ydieresis/fraction/currency/guilsinglleft
/guilsinglright/fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase
/perthousand/Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex
/Idieresis/Igrave/Oacute/Ocircumflex/apple/Ograve/Uacute/Ucircumflex/Ugrave
/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla/hungarumlaut
/ogonek/caron ] def
/VSCII1Encoding [
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quotesingle
/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash
/zero/one/two/three/four/five/six/seven/eight
/nine/colon/semicolon/less/equal/greater/question
/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z
/bracketleft/backslash/bracketright/asciicircum/underscore
/grave/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z
/braceleft/bar/braceright/asciitilde/DEL
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/Abreve/Acircumflex/Ecircumflex/Ocircumflex
/Ohorn/Uhorn/Dstroke/abreve
/acircumflex/ecircumflex/ocircumflex/ohorn
/uhorn/dstroke/Abrevegrave/Abrevehookabove
/combininggrave/combininghookabove/combiningtilde/combiningacute
/combiningdotbelow/agrave/ahookabove/atilde
/aacute/adotbelow/Abrevetilde/abrevegrave
/abrevehookabove/abrevetilde/abreveacute/Abreveacute
/Acircumflexgrave/Acircumflexhookabove/Acircumflextilde/Acircumflexacute
/Ecircumflexgrave/Ecircumflexhookabove/abrevedotbelow/acircumflexgrave
/acircumflexhookabove/acircumflextilde/acircumflexacute/acircumflexdotbelow
/egrave/Ecircumflextilde/ehookabove/etilde
/eacute/edotbelow/ecircumflexgrave/ecircumflexhookabove
/ecircumflextilde/ecircumflexacute/ecircumflexdotbelow/igrave
/ihookabove/Ecircumflexacute/Ocircumflexgrave/Ocircumflexhookabove
/itilde/iacute/idotbelow/ograve
/Ocircumflextilde/ohookabove/otilde/oacute
/odotbelow/ocircumflexgrave/ocircumflexhookabove/ocircumflextilde
/ocircumflexacute/ocircumflexdotbelow/ohorngrave/ohornhookabove
/ohorntilde/ohornacute/ohorndotbelow/ugrave
/Ocircumflexacute/uhookabove/utilde/uacute
/udotbelow/uhorngrave/uhornhookabove/uhorntilde
/uhornacute/uhorndotbelow/ygrave/yhookabove
/ytilde/yacute/ydotbelow/EOF ] def
/VSCII2Encoding [
/.notdef/Uacute/Udotbelow/.notdef/Uhorngrave/Uhornhookabove/.notdef
/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/Uhorntilde/Uhornacute/Uhorndotbelow/Ygrave/Yhookabove/Ytilde/Yacute
/Ydotbelow
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quotesingle
/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash
/zero/one/two/three/four/five/six/seven/eight
/nine/colon/semicolon/less/equal/greater/question
/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z
/bracketleft/backslash/bracketright/asciicircum/underscore
/grave/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z
/braceleft/bar/braceright/asciitilde/DEL
/Agrave/Ahookabove/Atilde/Aacute/Adotbelow/Abrevedotbelow
/Acircumflexdotbelow/Egrave
/Ehookabove/Etilde/Eacute/Edotbelow/Ecircumflexdotbelow/Igrave
/Ihookabove/Itilde
/Iacute/Idotbelow/Ograve/Ohookabove/Otilde/Oacute/Odotbelow
/Ocircumflexdotbelow
/Ohorngrave/Ohornhookabove/Ohorntilde/Ohornacute/Ohorndotbelow/Ugrave
/Uhookabove/Utilde
/Abreve/Acircumflex/Ecircumflex/Ocircumflex/Ohorn/Uhorn/Dstroke/abreve
/acircumflex/ecircumflex/ocircumflex/ohorn/uhorn/dstroke/Abrevegrave
/Abrevehookabove
/combininggrave/combininghookabove/combiningtilde/combiningacute
/combiningdotbelow/agrave/ahookabove/atilde
/aacute/adotbelow/Abrevetilde/abrevegrave/abrevehookabove/abrevetilde
/abreveacute/Abreveacute
/Acircumflexgrave/Acircumflexhookabove/Acircumflextilde/Acircumflexacute
/Ecircumflexgrave/Ecircumflexhookabove/abrevedotbelow/acircumflexgrave
/acircumflexhookabove/acircumflextilde/acircumflexacute
/acircumflexdotbelow/egrave/Ecircumflextilde/ehookabove/etilde
/eacute/edotbelow/ecircumflexgrave/ecircumflexhookabove
/ecircumflextilde/ecircumflexacute/ecircumflexdotbelow/igrave
/ihookabove/Ecircumflexacute/Ocircumflexgrave/Ocircumflexhookabove
/itilde/iacute/idotbelow/ograve
/Ocircumflextilde/ohookabove/otilde/oacute/odotbelow/ocircumflexgrave
/ocircumflexhookabove/ocircumflextilde
/ocircumflexacute/ocircumflexdotbelow/ohorngrave/ohornhookabove
/ohorntilde/ohornacute/ohorndotbelow/ugrave
/Ocircumflexacute/uhookabove/utilde/uacute/udotbelow/uhorngrave
/uhornhookabove/uhorntilde
/uhornacute/uhorndotbelow/ygrave/yhookabove/ytilde/yacute/ydotbelow
/EOF ] def
% *** Functions ***
% General reencode procedure
/REncode { % Encodingvector font /newname REncode -> font
exch dup maxlength dict dup begin
exch { 1 index /FID ne { def } { pop pop } ifelse } forall
/Encoding 4 -1 roll def
end definefont
} def
/rope 50 string def
/center { % string center -> centers string around current position
gsave dup stringwidth pop -0.5 mul 0 rmoveto show grestore
} def
/tablerow { % rownumber tablerow -> prints a row of characters
dup cellx mul 16celly celly sub moveto
16 mul 1 1 index 15 add {
dup tableencoding exch get dup /.notdef eq
{ pop pop
gsave cellx 0 rlineto 0 celly rlineto cellx neg 0 rlineto
closepath notdefgray setgray fill grestore }
{ gsave cellx 0.5 mul celly 1.8 mm sub rmoveto
TRS setfont rope cvs center
( ) dup 0 4 -1 roll put grestore
gsave cellx 0.5 mul yup rmoveto center grestore }
ifelse
0 celly neg rmoveto
} for
} bind def
/fonttable { % font notestring greystring fonttable -> make a table
/GreyString exch def
/NoteString exch def
gsave
/fsize celly 0.6 mul def
/16cellx 16 cellx mul def
/16celly 16 celly mul def
/17cellx 16cellx cellx add def
/17celly 16celly celly add def
fsize scalefont setfont
/fontname currentfont /FontName known
{ currentfont /FontName get dup type /stringtype ne { 100 string cvs } if
} { () } ifelse def
/tableencoding currentfont /Encoding get def
cellx 0 translate
/yup fsize 0.3 mul def
0 1 15 { tablerow } for
0 0 moveto 0 16celly rlineto 16cellx 0 rlineto 0 16celly neg rlineto
closepath 2 setlinewidth stroke
cellx neg 0 translate
0 1 17 { celly mul 0 exch moveto 17cellx 0 rlineto } for
0 1 17 { cellx mul 0 moveto 0 17celly rlineto } for
0 setlinewidth stroke
TI fsize 0.9 mul scalefont setfont
cellx 2 div 16celly celly sub yup add moveto
(0123456789ABCDEF)
{ ( ) dup 0 4 -1 roll put center 0 celly neg rmoveto } forall
cellx 2 div 16celly fsize 0.2 mul add moveto (hex) center
cellx 0 rmoveto
(0123456789ABCDEF) { ( x) dup 0 4 -1 roll put center cellx 0 rmoveto } forall
cellx 2 div 16celly celly sub yup add celly 0.5 mul add moveto
TI fsize 0.4 mul scalefont setfont
(0123456701234567)
{ ( ) dup 0 4 -1 roll put center 0 celly neg rmoveto } forall
cellx 2 div 17celly fsize 0.4 mul sub moveto (oct) center cellx 0 rmoveto
[(00x) (02x) (04x) (06x) (10x) (12x) (14x) (16x) (20x) (22x) (24x) (26x)
(30x) (32x) (34x) (36x)] { center cellx 0 rmoveto } forall
cellx 2 div 17celly fsize 0.8 mul sub moveto (dec) center cellx 0 rmoveto
0 1 15 { 16 mul rope cvs center cellx 0 rmoveto } for
0 17celly celly add moveto
TB fsize scalefont setfont () show
gsave TR fsize scalefont setfont fontname show
grestore
17cellx currentpoint exch pop moveto
NoteString dup stringwidth pop neg 0 rmoveto show
grestore
0 17celly 2 mm add moveto
gsave cellx 2 div 0 rlineto 0 celly 2 div rlineto cellx -2 div 0 rlineto
closepath
gsave notdefgray setgray fill grestore 0 setlinewidth stroke grestore
TR 12 scalefont setfont
cellx 0.7 mul 0 rmoveto
GreyString show
} bind def
%%EndProlog
%%BeginSetup
x0 y0 translate
%%EndSetup
%%Page: - 1
% *** Examples ***
% /Helvetica findfont (Adobe Standard) (.notdef) fonttable gsave
% showpage grestore
% /Symbol findfont (Adobe Standard) (.notdef) fonttable gsave showpage
% grestore
ISOLatin1Encoding /Helvetica findfont /TR-ISO1 REncode
(ISO 8859-1) (.notdef) fonttable gsave showpage grestore
% ISOLatin2Encoding /Helvetica findfont /TR-ISO2 REncode
% (ISO 8859-2) (.notdef) fonttable gsave showpage grestore
% MacEncoding /Helvetica findfont /TR-Mac REncode (Macintosh)
% (= ASCII) fonttable gsave showpage grestore
MacFontographerEncoding /Helvetica findfont /TR-MFtg REncode
(\(Mac\)Fontographer) (.notdef) fonttable gsave showpage grestore
% VSCII1Encoding /MyFnt findfont /TR-V1 REncode (VSCII-1)
% (as specified in ISO 8859-1) fonttable gsave showpage grestore
% VSCII2Encoding /MyFnt findfont /TR-V2 REncode (VSCII-2)
% (undefined code) fonttable gsave showpage grestore
% WinLatin1Encoding /Helvetica findfont /TR-MS REncode (Windows Latin1)
% (.notdef) fonttable gsave showpage grestore
% /MyFnt findfont (*Raw*) (.notdef) fonttable gsave showpage grestore
%%Trailer
----- E n d Included Text --------------------------------------------
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads