summaryrefslogtreecommitdiff
path: root/fonts/gothic/cmfrak/xxfrak.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/gothic/cmfrak/xxfrak.mf
Initial commit
Diffstat (limited to 'fonts/gothic/cmfrak/xxfrak.mf')
-rw-r--r--fonts/gothic/cmfrak/xxfrak.mf168
1 files changed, 168 insertions, 0 deletions
diff --git a/fonts/gothic/cmfrak/xxfrak.mf b/fonts/gothic/cmfrak/xxfrak.mf
new file mode 100644
index 0000000000..74c7eebf4e
--- /dev/null
+++ b/fonts/gothic/cmfrak/xxfrak.mf
@@ -0,0 +1,168 @@
+u#:=20/36pt#; % unit width
+lower_u#:=20/36pt#;
+
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=246/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=167/36pt#; % height of lowercase without ascenders
+%x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=87/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=7/36pt#; % lowercase hairline breadth
+%hair#:=9/36pt#; % lowercase hairline breadth
+%stem#:=25/36pt#; % lowercase stem breadth
+stem#:=24/36pt#; % lowercase stem breadth
+curve#:=30/36pt#; % lowercase curve breadth
+ess#:=27/36pt#; % breadth in middle of lowercase s
+flare#:=33/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=38/36pt#; % diameter of dots
+%cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_hair#:=8/36pt#;
+cap_amount#:=8/36pt#;
+%cap_stem#:=32/36pt#; % uppercase stem breadth
+cap_stem#:=32/36pt#;
+cap_curve#:=37/36pt#; % uppercase curve breadth
+cap_ess#:=35/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=28/36pt#; % protrusion of lowercase serifs
+cap_jut#:=37/36pt#; % protrusion of uppercase serifs
+beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=11/36pt#; % lowercase bar thickness
+slab#:=11/36pt#; % serif and arm thickness
+cap_bar#:=11/36pt#; % uppercase bar thickness
+cap_band#:=11/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=5/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+numeric usual_right, usual_left;
+usual_right#:=0.5u#;
+usual_left#:=0.3u#;
+
+granularity:=1.01;
+%aspect_ratio:=2/3aspect_ratio;
+
+mode_setup;
+font_setup;
+cap_amount:=8/36pt;
+foot:=0.207x_height;
+num_height:=1.242x_height;
+cap_kern:=4/36pt;
+boolean ligature; ligature:=false;
+numeric alpha; alpha:=0;
+numeric coef, gencoef; gencoef:=1;
+
+% The positions of characters depending on cm or dc layouts
+
+if dc_layout>0:
+ ae_ligature:=oct"346";
+ Ae_ligature:=oct"306";
+ ff_ligature:=oct"033";
+ ss_ligature:=oct"034";
+ st_ligature:=oct"035";
+ sf_ligature:=oct"036";
+ tz_ligature:=oct"037";
+ ch_ligature:=oct"027";
+ ck_ligature:=oct"275";
+ s_final:=oct"276";
+ en_dash:=oct"025";
+ em_dash:=oct"026";
+ eszet:=oct"377";
+ open_gaens:=oct"022";
+else:
+ ae_ligature:=oct"032";
+ Ae_ligature:=oct"035";
+ ff_ligature:=oct"013";
+ ss_ligature:=oct"014";
+ st_ligature:=oct"015";
+ sf_ligature:=oct"016";
+ tz_ligature:=oct"017";
+ ch_ligature:=oct"012";
+ ck_ligature:=oct"275";
+ s_final:=oct"276";
+ en_dash:=oct"173";
+ em_dash:=oct"174";
+ eszet:=oct"031";
+ open_gaens:=oct"134";
+fi;
+
+%granularity:=1.01;
+
+%readfrom("yfrakbase"); % -sl 15-3-1991
+
+%if proofing>1: generate ycurrent; fi % switch to the driver file%
+
+generate cmfrakmis; % -sl 15-3-1991 / 24-3-1994 DT
+
+generate cmfraklow; % -sl 15-3-1991 / 25-3-94 DT
+
+generate cmfrakupp; % -sl 15-3-1991 / 24-3-1994 DT
+
+generate cmfraknum;
+
+generate cmfrakoth; % -sl 15-3-1991 / 24-3-1994 DT
+
+font_slant slant; font_x_height x_height#;
+font_normal_space 6u#+2letter_fit#;
+ font_normal_stretch 3u#; font_normal_shrink 2u#;
+ font_quad 18u#+4letter_fit#;
+ font_extra_space 2u#;
+
+ligtable "c": "h"=:ch_ligature, "k"=:ck_ligature;
+ligtable "f": "f"=:ff_ligature;
+ligtable "s": "z"=:eszet,
+ ":"=:s_final, "s"=:ss_ligature, "t"=:st_ligature,
+"f"=:sf_ligature, "b" kern 1.03u#, "d" kern 1.03u#, "h" kern 1.03u#, "k" kern 1.03u#,
+"l" kern 1.03u#, "i" kern 0.4u#, "j" kern 0.4u#;
+ %, " "=:s_final " ";
+ligtable "t": "z"=:tz_ligature;
+ligtable oct"042": "a"=:oct"344", "e"=:oct"353", "o"=:oct"366", "u"=:oct"374",
+ "s"=:eszet;
+% ligtable "*": "a"=:oct"211", "e"=:oct"220", "o"=:oct"231", "u"=:oct"236";
+ligtable "`": "`"=:open_gaens;
+ligtable "'": "'"=:oct"042";
+ligtable "-": "-"=:en_dash;
+ligtable en_dash: "-"=:em_dash;
+ligtable ss_ligature: "b" kern 1.03u#, "d" kern 1.03u#, "h" kern 1.03u#, "k" kern 1.03u#
+, "l" kern 1.03u#, "i" kern 0.4u#, "j" kern 0.4u#;
+
+end.