From 2ed43ed355bb8ef6f39def20f5c61eba588e60d3 Mon Sep 17 00:00:00 2001 From: Ben Harris Date: Sat, 5 Dec 2009 00:13:16 +0000 Subject: [PATCH] Every font's Web page should include a sample. This one now does so, with all the machinery to construct it as well. --- Makefile | 18 +++++++++++++----- index.html | 4 +++- sample.ps | 33 +++++++++++++++++++++++++++++++++ title.ps | 8 ++++++++ 4 files changed, 57 insertions(+), 6 deletions(-) create mode 100644 sample.ps create mode 100644 title.ps diff --git a/Makefile b/Makefile index 925a28c..9a40180 100644 --- a/Makefile +++ b/Makefile @@ -1,11 +1,19 @@ -all: bedstead.otf +all: bedstead.otf sample.png title.png bedstead.sfd: bedstead ./bedstead > bedstead.sfd -bedstead.otf: bedstead.sfd - fontforge -lang=ff -c 'Open($$1); Generate($$2)' \ - bedstead.sfd bedstead.otf +.SUFFIXES: .ps .png .sfd .otf .pfa + +.sfd.otf: + fontforge -lang=ff -c 'Open($$1); Generate($$2)' ${.IMPSRC} ${.TARGET} + +.sfd.pfa: + fontforge -lang=ff -c 'Open($$1); Generate($$2)' ${.IMPSRC} ${.TARGET} + +.ps.png: bedstead.pfa + gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pnggray \ + -sOutputFile=${.TARGET} bedstead.pfa ${.IMPSRC} clean: .PHONY - rm -f bedstead bedstead.sfd bedstead.otf + rm -f bedstead *.sfd *.otf *.pfa *.png diff --git a/index.html b/index.html index 15c6377..0437a66 100644 --- a/index.html +++ b/index.html @@ -7,7 +7,7 @@ Bedstead – MODE 7 for the 21st century -

Bedstead – MODE 7 for the 21st century

+

Bedstead

Bedstead is an outline font based on the characters produced by the Mullard SAA5050 series of Teletext Character Generators. The SAA5050 is familiar to those of a certain age as the one that @@ -23,6 +23,8 @@ glyphs are drawn on the same 5 × 9 pixel grid, albeit with a slight variation to let the Arabic characters join up.

+

[ A sample of Bedstead's characters ]

+

The outline version of the font is generated by an ANSI C program which emits a Spline Font Database file for use with Fontforge, which diff --git a/sample.ps b/sample.ps new file mode 100644 index 0000000..af7cd17 --- /dev/null +++ b/sample.ps @@ -0,0 +1,33 @@ +<< /HWResolution [ 72 72 ] /PageSize [ 772 284 ] >> setpagedevice +/Bedstead findfont 40 scalefont setfont +/row { %def + 0 0 moveto + { %forall + glyphshow + } forall + 0 -40 translate +} def +0 253 translate +[ /A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/Y/V/W/Z/Y/Z ] row +[ /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 ] row +[ /uni0410/uni0411/uni0412/uni0413/uni0414/uni0415/uni0416/uni0417 + /uni0418/uni0419/uni041A/uni041B/uni041C/uni041D/uni041E/uni041F + /uni0420/uni0421/uni0422/uni0423/uni0424/uni0425/uni0426/uni0427 + /uni0428/uni0429/uni042A/uni042B/uni042C/uni042D/uni042E/uni042F ] row +[ /uni0430/uni0431/uni0432/uni0433/uni0434/uni0435/uni0436/uni0437 + /uni0438/uni0439/uni043A/uni043B/uni043C/uni043D/uni043E/uni043F + /uni0440/uni0441/uni0442/uni0443/uni0444/uni0445/uni0446/uni0447 + /uni0448/uni0449/uni044A/uni044B/uni044C/uni044D/uni044E/uni044F ] row +[ /uni05D0/uni05D1/uni05D2/uni05D3/uni05D4/uni05D5/uni05D6/uni05D7 + /uni05D8/uni05D9/uni05DA/uni05DB/uni05DC/uni05DD/uni05DE/uni05DF + /uni05E0/uni05E1/uni05E2/uni05E3/uni05E4/uni05E5/uni05E6/uni05E7 + /uni05E8/uni05E9/uni05EA ] row +[ /zero/one/two/three/four/five/six/seven/eight/nine + /onequarter/onehalf/threequarters + /exclam/question/period/comma/colon/semicolon + /quotesingle/quotedbl/quoteleft/quoteright/quotedblleft/quotedblright + /parenleft/parenright/bracketleft/bracketright/braceleft/braceright ] row +[ /hyphen/endash/plus/multiply/divide/less/equal/greater/slash/backslash/bar + /sterling/dollar/yen/cent/currency + /percent/ampersand/asterisk/numbersign/at/section/paragraph ] row +showpage diff --git a/title.ps b/title.ps new file mode 100644 index 0000000..91d1345 --- /dev/null +++ b/title.ps @@ -0,0 +1,8 @@ +<< /HWResolution [ 72 72 ] /PageSize [ 378 72 ] >> setpagedevice +/Bedstead findfont 80 scalefont setfont +0 8 moveto +/s { show } def +/k { -8 0 rmoveto } def +% Manually apply the 'palt' OTF feature to improve the spacing +(Beds) s k (t) s k (ead) s +showpage -- 2.30.2