diff options
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/fdsymbol/fdbase.mf')
-rw-r--r-- | Master/texmf-dist/fonts/source/public/fdsymbol/fdbase.mf | 80 |
1 files changed, 40 insertions, 40 deletions
diff --git a/Master/texmf-dist/fonts/source/public/fdsymbol/fdbase.mf b/Master/texmf-dist/fonts/source/public/fdsymbol/fdbase.mf index e80c16f192a..51dd7970f31 100644 --- a/Master/texmf-dist/fonts/source/public/fdsymbol/fdbase.mf +++ b/Master/texmf-dist/fonts/source/public/fdsymbol/fdbase.mf @@ -6,6 +6,14 @@ % is also available with a FAQ at: http://scripts.sil.org/OFL % +design_size := 10; +font_size design_size * pt#; + +if known ps_output: + font_version := "1.002"; + font_comment := "Copyright (c) 2011, Michael Ummels. This Font Software is licensed under the SIL Open Font License, Version 1.1."; +fi + u# := 0.6pt#; asc_height# := 7.54pt#; % 8.56pt#; cap_height# := 7.07pt#; %7.37pt#; @@ -47,18 +55,6 @@ bigop_height# := 10.7pt#; % height of big operators mode_setup; -% mf2pt1 support - -if known ps_output: -% pencircle := mfplain_pencircle; -% pensquare := mfplain_pencircle; -% penrazor := mfplain_pencircle; - pensquare := pencircle; - penrazor := pencircle; - let filldraw := mfplain_filldraw; - let unfilldraw := mfplain_unfilldraw; -fi - define_pixels(u, asc_height, cap_height, desc_depth, delim_height, bigop_height, x_height); define_whole_pixels(dot_size, small_op_size, med_op_size, large_op_size, plus_size, order_width, equal_spread, greater_spread, @@ -293,23 +289,24 @@ def draw_bump(suffix $)(expr sign, lc, rc, rad, thick) = penpos0$(thick, angle (rc - lc) + sign * 90); penpos1$(thick, angle (rc - lc) + sign * 90); penpos2$(thick, angle (rc - lc) + sign * 90); - penpos3$(thick, angle (rc - lc) + sign * 90); - penpos4$(thick, angle (rc - lc) + sign * 90); + penpos3$(thick, angle (rc - lc)); + penpos4$(thick, angle (rc - lc)); - z3$' = z3$; - z5$ = z3$.l; - z4$' = z4$; + z5$ = z3$.r; z6$ = z4$.l; - penpos3$'(thick, angle (rc - lc) + 180); - penpos5$(thick, angle (rc - lc) + 180); - penpos4$'(thick, angle (rc - lc)); - penpos6$(thick, angle (rc - lc)); + penpos5$(thick, angle (rc - lc) + sign * 90); + penpos6$(thick, angle (rc - lc) + sign * 90); + + path p$, q$; + numeric s$, t$; - fill stroke z0$.e -- z3$.e; - fill stroke z5$.e -- z3$'.e{dir (angle (rc - lc) + sign * 90)} .. - z2$.e{rc - lc} .. z4$'.e{dir (angle (rc - lc) - sign * 90)} -- z6$.e; - fill stroke z1$.e -- z4$.e; + p$ = z3$.l{dir (angle(rc - lc) + sign * 90)} .. {rc - lc}z2$.r; + q$ = z2$.r{rc - lc} .. {dir (angle(rc - lc) - sign * 90)}z4$.r; + s$ = xpart (p$ intersectiontimes (z0$.r -- z1$.r)); + t$ = xpart (q$ intersectiontimes (z0$.r -- z1$.r)); + + fill z0$.r -- point s$ of p$ & subpath (s$,1) of p$ & subpath (0,t$) of q$ & point t$ of q$ -- z1$.r -- z1$.l -- z6$l. -- z6${dir (angle (rc - lc) + sign * 90)} .. z2$.l{lc - rc} .. {dir (angle (rc - lc) - sign * 90)}z5$ -- z5$.l -- z0$.l -- cycle; penlabels(0$,1$,2$,3$,4$,5$,6$); enddef; @@ -447,12 +444,13 @@ def draw_product(expr centre, width, height, sign, thick) = z1r - z0r = z3r - z2r = width * right; z2r - z0r = sign * (height - thin) * up; 1/2[1/2[z0l,z1l], 1/2[z2r,z3r]] = centre; - z4 = 1/3[z0,z1]; - z5 = 2/3[z0,z1]; - z6 = 1/2[z0,z4] + sign * max(1/9width, thin) * up; - z7 = 1/2[z1,z5] + sign * max(1/9width, thin) * up; - z8 = 1/2[z0,z4] + sign * min(height - thin - 1/9width, height - 2thin) * up; - z9 = 1/2[z1,z5] + sign * min(height - thin - 1/9width, height - 2thin) * up; + z4 = z0 + min(5thin, 2/5width) * right; + z5 = z1 + min(5thin, 2/5width) * left; + z6 = 1/2[z0,z4] + sign * 4/3thin * up; + z7 = 1/2[z1,z5] + sign * 4/3thin * up; + x8 = 1/2[x0,x4]; + x9 = 1/2[x1,x5]; + y8 = y9 = y2 - sign * 4/3thin; penpos0(thin, sign * 100); penpos1(thin, sign * 80); @@ -480,32 +478,34 @@ def draw_sum(suffix $)(expr centre, width, height, thick) = z1$ - z0$ = z3$ - z2$ = width * right; z2$ - z0$ = height * up; 1/2[1/2[z0$,z1$], 1/2[z2$,z3$]] = centre; - z4$ - z1$ = z3$ - z5$.l = 1/5height * up; - z6$ = whatever[z0$,z1$] + thick/2 * up = z4$ - whatever * dir 77; + z4$ - z1$ = z3$ - z5$.l = 3thin * up; + z6$ = whatever[z0$,z1$] + thin * up = z4$ - whatever * dir 77; z8$r = z2$ + whatever * right; z8$l = z2$ + whatever * down; - penpos 6$(thick, 90); - penpos 4$(thin, 167); - penpos 5$(thin, 180); - penpos 8$(5/6thick, 77); + penpos6$(thick, 90); + penpos4$(thin, 167); + penpos5$(thin, 180); + penpos8$(5/6thick, 77); z13$ = centre; - penpos 13$(6/5thick, 10); + + penpos13$(6/5thick, 10); z3$ - z7$ = 2/3thick * up; z9$ = z13$r + whatever * (z8$l - z13$l) = z7$ + whatever * right; z10$r = z0$ + whatever * up; z10$l = z0$ + whatever * right; - penpos 10$(3/4thick, 103); + + penpos10$(3/4thick, 103); z11$ = z13$r + whatever * (z10$r - z13$l); y11$ = y10$r; fill z10$l -- z6$l -- z4$l -- z4$r{-dir 77} .. {left}1/4[z6$r,z10$r] -- z11$ -- z13$r -- z9$ -- 1/4[z7$,z8$l]{right} .. {-dir 113}z5$r -- z5$l -- z3$ -- z8$r -- z8$l -- z13$l -- z10$r -- cycle; - penlabels(0$,1$,2$,3$,4$,5$,6$,7$,8$,9$,10$,11$,12$,13$); + penlabels(3$,4$,5$,6$,7$,8$,9$,10$,11$,12$,13$); enddef; def draw_integral(suffix $)(expr scale, centre, thick) = |