summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/fonts/source/public/cm/italp.mf
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/cm/italp.mf')
-rw-r--r--Master/texmf-dist/fonts/source/public/cm/italp.mf100
1 files changed, 100 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/cm/italp.mf b/Master/texmf-dist/fonts/source/public/cm/italp.mf
new file mode 100644
index 00000000000..cdca1286294
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/cm/italp.mf
@@ -0,0 +1,100 @@
+% THIS IS THE OFFICIAL COMPUTER MODERN SOURCE FILE italp.mf BY D E KNUTH.
+% IT MUST NOT BE MODIFIED IN ANY WAY UNLESS THE FILE NAME IS CHANGED!
+
+% This file contains `\$' and `\&' and `?' in the so-called italic style.
+
+% Codes \0044, \0046, and \0077 are generated, as well as code |spanish_query|
+% (for a Spanish question mark) if that code value is known.
+
+cmchar "Sterling sign";
+beginchar("$",12u#,asc_height#,0);
+adjust_fit(0,.75asc_height#*slant-.5u#); pickup fine.nib;
+pos0(flare,0); pos1(hair,0); pos2(vair,90); pos3(stem,180);
+pos4(stem,180); pos4'(stem,0); pos5(vair,-90); z4'=z4;
+x2=2/3w-.5u; rt x3l=rt x4l=hround(.5w-u+.5stem); x5=2.5u;
+y1=y3=.75h; top y2=h+oo; y4=.25h; bot y5r=-oo;
+rt x1r=hround(w-1.5u); bulb(2,1,0); % bulb
+filldraw stroke pulled_arc.e(2,3)..z4e; % stem
+numeric light_stem; light_stem=2/3[vair,vstem];
+pos6(.5[hair,light_stem],-180); pos7(light_stem,-300);
+pos8(light_stem,-300); pos9(hair,-180);
+lft x6r=hround u; x7=3u; x8=w-3.5u; rt x9l=hround(w-u);
+y6=.4[y5,y7]; top y7r=vround .2h; bot y8l=-oo; y9=good.y .2h;
+filldraw stroke pulled_arc.e(4',5)...z6e{up}...z7e{right}
+ ..{right}z8e...{up}z9e; % loop and arm
+pos10(bar,90); pos11(bar,90); x10=3u; x11=w-4.5u;
+top y10r=top y11r=vround(.5h+.5bar); filldraw stroke z10e--z11e; % bar
+penlabels(1,2,3,4,5,6,7,8,9,10,11); endchar;
+
+cmchar "Italic ampersand";
+beginchar("&",14u#,asc_height#,0);
+italcorr asc_height#*slant-1.5u#;
+adjust_fit(if monospace:-u#,-2u# else: 0,0 fi); pickup fine.nib;
+pos1(flare,0); pos2(hair,0); pos3(vair,90);
+rt x2r=hround.5w; x3=1/3(w-u);
+top y3r=h+o; y2=.5[x_height,h]; bulb(3,2,1); % left bulb
+pos4(stem,180); pos5(vair,270); pos6(hair,360); pos7(vair,450);
+pos8(curve,540); pos9(vair,630); pos10(hair,720);
+lft x4r=hround 1.25u; x5=x7=x3+1/6u; rt x6r=hround(x5+1.5u);
+lft x8r=hround u; x9=.5w; rt x10r=hround(w-1.5u);
+y4=.5[y3,y5]; top y5l=vround .77x_height; y6=.5[y5,y7];
+y7l=good.y 1/3[y5,y3]; y8=.5[y7,y9]; bot y9r=-o; y10=bar_height;
+pos12(hair,0); pos13(curve,0); pos14(hair,0); pos15(vair,90); pos16(curve,90);
+rt x12r=rt x13r=hround(w-2u); lft x14l=hround(.5w+.5u);
+x15=x16=rt x14r+u;
+y12=y13=h-.5curve; y14=.5[bar_height,x_height];
+bot y15l=bot y16l=vround y10;
+numeric theta; theta=angle((z12-z14)xscaled 2);
+pos11(hair,theta); x11=w-4u; y11=.5[y13,y16];
+filldraw stroke pulled_arc.e(3,4) & pulled_arc.e(4,5) & pulled_arc.e(5,6)
+ & pulled_arc.e(6,7) & pulled_arc.e(7,8) & pulled_arc.e(8,9)
+ & {{interim superness:=more_super; pulled_arc.e(9,10)}}
+ ..tension .9 and 1..{dir(theta+100)}z11e; % bowls, loop, and stem
+pos11'(hair,theta-90); z11'=z11;
+forsuffixes $=l,r: path p$;
+ p$=z12${down}..z11'${-dir theta}..{down}z14$...{right}z15$; endfor
+filldraw p.l--reverse p.r--cycle; % arms
+path q[]; q1=z13r{up}..z13l{down}..cycle;
+q2=z16l{right}..z16r{left}..cycle;
+filldraw subpath(0,ypart(p.l intersectiontimes q1)) of q1--cycle; % upper bulb
+filldraw subpath(0,ypart(p.r intersectiontimes q2)) of q2--cycle; % lower bulb
+penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); endchar;
+
+cmchar "Italic question mark";
+beginchar("?",9u#,asc_height#,0);
+italcorr asc_height#*slant-u#;
+adjust_fit(0,0); pickup tiny.nib; pos10(dot_size,0); pos11(dot_size,90);
+lft x10l=hround(.5w-.5dot_size); bot y11l=0; z10=z11; dot(10,11); % dot
+pickup fine.nib; pos1(flare,180); pos2(hair,180); pos3(vair,90);
+lft x1r=hround u; x3=.5w;
+y1-.5flare=x_height; top y3r=h+o; bulb(3,2,1); % bulb
+pos8(vair,-90); x8=.5w; bot y8r=.25[top y11r,x_height]+1;
+numeric theta; theta=90+angle(10u,y3-y8); slope:=(y3-y8)/10u;
+pos3'(vair,-90); z3'=z3; pos0(vstem,theta); x0=x3; y0=1/3[y8,y3];
+rt x4l=hround(w-1.5u); lft x7r=hround 1/3w;
+x4l-x4r=x7l-x7r=hround .5[vair,vstem]-fine;
+ellipse_set(3'l,4l,5l,0l); ellipse_set(3'r,4r,5r,0r); y4=y4r;
+ellipse_set(8l,7l,6l,0l); ellipse_set(8r,7r,6r,0r); y7=y7r;
+pos9(hair,0); rt x9r=hround(2/3w+.5hair); y9=good.y .5[y8,y0];
+filldraw stroke super_arc.e(3',4) & z4e{down}
+ ..z5e---z6e..z7e{down} & super_arc.e(7,8)...{up}z9e; % main stroke
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
+
+iff known spanish_query: cmchar "Spanish open italic question mark";
+beginchar(spanish_query,9u#,asc_height#-desc_depth#,desc_depth#);
+adjust_fit(0,0); pickup tiny.nib; pos10(dot_size,0); pos11(dot_size,90);
+lft x10l=hround(.5w-.5dot_size); top y11r=h; z10=z11; dot(10,11); % dot
+pickup fine.nib; pos1(flare,0); pos2(hair,0); pos3(vair,-90);
+rt x1r=hround(w-u); x3=.5w; y1+.5flare=asc_height-x_height-d;
+bot y3r=-d-o; bulb(3,2,1); % bulb
+pos8(vair,90); x8=.5w; top y8r=.25[bot y11l,y1+.5flare]-1;
+numeric theta; theta=angle(10u,y8-y3)-90; slope:=(y8-y3)/10u;
+pos3'(vair,90); z3'=z3; pos0(vstem,theta); x0=x3; y0=1/3[y8,y3];
+lft x4l=hround 1.5u; rt x7r=hround 2/3w;
+x4r-x4l=x7r-x7l=hround .5[vair,vstem]-fine;
+ellipse_set(3'l,4l,5l,0l); ellipse_set(3'r,4r,5r,0r); y4=y4r;
+ellipse_set(8l,7l,6l,0l); ellipse_set(8r,7r,6r,0r); y7=y7r;
+pos9(hair,180); lft x9r=hround(1/3w-.5hair); y9=good.y .5[y8,y0];
+filldraw stroke super_arc.e(3',4) & z4e{up}
+ ..z5e---z6e..z7e{up} & super_arc.e(7,8)...{down}z9e; % main stroke
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;