% This is `skakf10.mf' version 1.0 as of 6/99 % based on original work by Piet Tutelaers % Informator symbols added % by Dirk Baechle, dl9obn@darc.de <2002-11-06> % generates a font consisting of chess figurines mode_setup; font_size 10pt#; u#:=10pt#; input skakbase; def figurine(expr code) = beginchar(code, 1.0d#, 0.9d#, .1d#); pickup pencircle scaled hairline; %gg hairline_pen:=savepen; %gg pickup pencircle scaled thin; thin_pen:=savepen ; % for drawing pieces pickup pencircle scaled thick; thick_pen:=savepen; % for drawing inside pieces define_whole_pixels(d); figshift:=0; scantokens code(d, 0, -.2); currentpicture:=currentpicture shifted (0,liftfig#); endchar; enddef; def narrow_figurine(expr code) = beginchar(code, 0.8d#, 0.9d#, .1d#); pickup pencircle scaled hairline; %gg hairline_pen:=savepen; %gg pickup pencircle scaled thin; thin_pen:=savepen ; % for drawing pieces pickup pencircle scaled thick; thick_pen:=savepen; % for drawing inside pieces define_whole_pixels(d); figshift:=-0.1; scantokens code(d, 0, -.2); currentpicture:=currentpicture shifted (0,liftfig#); endchar; enddef; M=1; % number of squares d#:=10pt#/M; %10pt#/M; % size per square lift=0.08; hairline#:=.30pt#; %gg thin#:=1/3pt#; middle#:=1/2pt#; thick#:=5/6pt#; define_blacker_pixels(hairline, thin, middle, thick); %gg added hairline??? light=0; dark=1; white=0; black=1; background:=light; color:=white; liftfig#:=0d#; narrow_figurine("K"); narrow_figurine("R"); narrow_figurine("B"); figurine("N"); figurine("p"); figurine("Q"); input skakinf; end;