summaryrefslogtreecommitdiff
path: root/fonts/cm/mf/romsub.mf
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /fonts/cm/mf/romsub.mf
Initial commit
Diffstat (limited to 'fonts/cm/mf/romsub.mf')
-rw-r--r--fonts/cm/mf/romsub.mf41
1 files changed, 41 insertions, 0 deletions
diff --git a/fonts/cm/mf/romsub.mf b/fonts/cm/mf/romsub.mf
new file mode 100644
index 0000000000..b7ea6fa261
--- /dev/null
+++ b/fonts/cm/mf/romsub.mf
@@ -0,0 +1,41 @@
+% THIS IS THE OFFICIAL COMPUTER MODERN SOURCE FILE romsub.mf BY D E KNUTH.
+% IT MUST NOT BE MODIFIED IN ANY WAY UNLESS THE FILE NAME IS CHANGED!
+
+% This file defines characters that go into a text font when |ligs<=1|.
+
+% Character codes \0013--\0015, \0074, and \0076 are generated when |ligs=1|;
+% in addition, codes \0040, \0042, \0055, \0134, \0137, and \0173--\0175
+% are generated, if |ligs=0|.
+
+up_arrow=oct"013"; down_arrow=oct"014";
+less=ASCII"<"; greater=ASCII">";
+if ligs=0: straight_quotes=oct"042"; minus=ASCII"-";
+ backslash=ASCII"\"; underbar=ASCII"_";
+ left_brace=ASCII"{"; vertical=ASCII"|"; right_brace=ASCII"}"; fi
+
+input sym;
+
+cmchar "Straight single quote";
+beginchar(oct"015",5u#,asc_height#,0);
+italcorr asc_height#*slant+.5 if serifs: flare# else: stem# fi -2u#;
+adjust_fit(0,0);
+x1=x2=.5w; y2=max(.5[bar_height,x_height]+.5vair,h-x_height);
+if serifs: pickup crisp.nib; pos1(flare,0); pos2(vair,0);
+ y1+.5stem=h; filldraw circ_stroke z1e--z2e; % stem and bulb
+else: pickup fine.nib; pos1(stem,0); pos2(vair,0);
+ top y1=h; filldraw stroke z1e--z2e; fi % stem
+penlabels(1,2); endchar;
+
+iff ligs=0: cmchar "Blank-space sign";
+beginchar(oct"040",9u#,bar_height#,.5desc_depth#);
+italcorr bar_height#*slant-.25u#;
+adjust_fit(0,0);
+numeric thin_vair#; thin_vair#=.7vair#;
+define_whole_blacker_pixels(thin_vair);
+forsuffixes $=1,2,3,4: penpos$(thin_vair,0); endfor
+penpos0(thin_vair,90); x0=.5w; y0l=vround(-d-.5thin_vair);
+x1=x2; x3=x4=w-x1; lft x1l=hround .75u;
+y1=y4=h; y2=y3=y0;
+fill z1l---z2l...(x2,y0l)---(x3,y0l)...z3r---z4r
+ ..z4l---(x3l,y0r)--(x2r,y0r)---z1r..cycle; % the stroke
+penlabels(0,1,2,3,4); endchar;