1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
if unknown gen_sigma : readfrom("gen_sigma") fi
def dims = 10u#,x_height#,0 enddef;
def ital = 0 enddef;
def fit_params = 0,0 enddef;
def gen_letter=
pickup fine.nib;
x1-.5stem=hround .75u; y1-.5stem=-o; %lower left
z1+z3=(w,h); z2=.5[z1,z3]; %upper right and middle
z1'=(z3-z1) if monowidth: xscaled 1/2 fi; %slope at 1 and 3
pos1(stem,angle z1'+90); pos2(.6[hair,stem],angle z1'+90);
pos3(stem,angle z1'+90);
filldraw double_circ_stroke z1e{z1'}..z2e..{z1'}z3e; %diagonal stroke
z4=if monowidth: z1 else: 1/4[z1,z3] fi; z4+z7=z3+z1; %handle attachments
z4'=if monowidth: z1' else: (z3-z1) xscaled .25 fi; %slope at 4 and 7
pos4(hair,angle z4'-90); pos7(hair,angle z4'+90);
pos5(vstem,90); top y5r=h+o; pos6(vstem,180); z6l=z5l;
lft x6r=hround(x1-.5stem-.25u);
filldraw circ_stroke z6e{up}...z5e{right}...z4e{-z4'}; %left handle
pos8(.5[vstem,stem],-90); bot y8r=-o; rt x9r=hround(x3+.5stem+.25u);
pos9(.5[vstem,stem],0); z9l=z8l;
filldraw circ_stroke z9e{down}...z8e{left}...z7e{z4'}; %right handle
enddef;
cmchar "Lowercase kappa";
beginchar("k",dims);
this_letter; penlabels(1,2,3,4,5,6,7,8,9,10); endchar;
if boolean barebones: picture savedpicture; endinput; fi
cmchar "Lowercase sigma followed by kappa";
begindoublechar(oct"013",dim_sigma);
mid_sigma; middoublechar(dims); this_letter; endchar;
picture savedpicture;
|