|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T h
Length: 969 (0x3c9) Types: TextFile Names: »halftone.mf«
└─⟦060c9c824⟧ Bits:30007080 DKUUG TeX 2/12/89 └─⟦this⟧ »./utilityfonts/half/halftone.mf« └─⟦52210d11f⟧ Bits:30007239 EUUGD2: TeX 3 1992-12 └─⟦24627e285⟧ »unix3.0/utilityfonts.tar.Z« └─⟦4ad600e20⟧ └─⟦this⟧ »utilityfonts/half/halftone.mf«
% halftone font with 65 levels of gray, characters "0" (white) to "p" (black) pair p[]; % the pixels in order (first p0 becomes black, then p1, etc) p0=(1,1); p8=(2,0); p16=(1,0); p24=(0,0); p32=(3,-1); p40=(2,-1); p48=(1,-1); p56=(2,-2); transform r; r=identity rotatedaround ((1.5,1.5),90); for i=0 step 8 until 56: p[i+2]=p[i] transformed r; p[i+6]=p[i+2] transformed r; p[i+5]=p[i+6] transformed r; p[i+1]=p[i] shifted (4,4); p[i+3]=p[i+2] shifted (4,4); p[i+7]=p[i+6] shifted (4,4); p[i+4]=p[i+5] shifted (4,4); endfor for i=32 step 1 until 63: p[i] := (xpart p[i] mod 8, ypart p[i] mod 8); endfor mode_setup; designsize:=64/pt; % that's 64 pixels def makebox(text t)= enddef; % shut off boxes picture prevchar; prevchar=nullpicture; for i=0 upto 64: beginchar(i+ASCII"0",designsize/8,designsize/8,0); currentpicture:=prevchar; if i>0: fill unitsquare shifted p[i-1]; fi prevchar:=currentpicture; endchar; endfor font_quad=designsize/8; end