% This is DXISIXTS.MF in text format, as of March 24, 1992
%
% DC fonts Version 1.1 (prerelease of EC fonts)
%
% [ heavily borrowed from the Computer Modern Roman family of
% fonts by D. E. Knuth ]
%
% Content:
%
% variant of 6test modified for testing of dcfonts
% should be used wit dxbase only
%
%
mode_def screenproof = % for onscreen viewing of CGA proofs (full screen)
proofing:=2; % yes, we're making full proofs
fontmaking:=0; % no, we're not making a font
tracingtitles:=1; % yes, show titles online
pixels_per_inch:=1001; % make it easy to view one char on screen
blacker:=0; % no additional blackness
fillin:=0; % no compensation for fillin
o_correction:=1; % no reduction in overshoot
aspect_ratio:=480/640; %265/640 % adjust for screen skewing also
enddef;
\mode:=screenproof;
mode_setup;
if unknown dxbase: input dxbase fi % omit if CMMF can be assumed
boolean running;
def abort = hide(scrollmode; running:=false) enddef;
def pause=stop "done with char "&decimal charcode&". " enddef;
let iff=always_iff;
def ligtable text t=enddef;
def charlist text t=enddef;
def extensible text t=enddef;
string currenttitle;
let semi=;; let echar=endchar; let endchar=enddef;
def dcchar expr s = currenttitle:=s;
let;=testchar semi quote def chartext=enddef;
def testchar = semi let;=semi;
% now `chartext echar' will generate the character to be tested
running:=true; errorstopmode;
for k=1 upto 8:
if running: if known params[k]: scantokens params[k]; font_setup;
currentwindow:=k;
currenttitle & ", " & fontname[k];
chartext echar; fi fi endfor
pause; enddef;
numeric fontsize[];
numeric gensize;
string params[],fontname[];
params[1]="roman_params"; fontsize[1]:=10; fontname[2]="dcti";
params[2]="sans_params"; fontsize[2]:=10; fontname[3]="dcbxti";
params[3]="tt_params"; fontsize[3]:=10; fontname[1]="dcitt";
params[4]="bold_params"; fontsize[4]:=10; fontname[4]="dcu";
params[5]="quote_params"; fontsize[5]:=10; fontname[5]="dcfi";
% params[6]="ital_params"; fontsize[6]:=10; fontname[6]="dci"; %vtt"; % cmti10";
w_rows=floor (1/2 screen_rows); w_cols=floor (1/3 screen_cols);
def open(expr k,i,j)=
openwindow k from ((i-1)*w_rows,(j-1)*w_cols) to (i*w_rows,j*w_cols)
at (-65,120) enddef;
def openit =
open(1,1,1); open(2,1,2); open(3,1,3);
open(4,2,1); open(5,2,2); open(6,2,3); enddef;
begingroup delimiters begintext generate;
def longerkludge expr s =
if length s > 8: substring (0,3) of s &
substring(length s-3,infinity) of fi s enddef;
def makedef(expr s)(text t) =
expandafter def scantokens s = t enddef; flushtext enddef;
def flushtext suffix t = enddef;
for k=1 upto 8: if known params[k]:
gensize := fontsize[k];
makedef(params[k])
expandafter expandafter expandafter begintext
scantokens ("input "&longerkludge fontname[k]); fi endfor
endgroup;
endinput;
|