summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/fonts/source/public/cmbright/ebpseudo.mf
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/cmbright/ebpseudo.mf')
-rw-r--r--Master/texmf-dist/fonts/source/public/cmbright/ebpseudo.mf93
1 files changed, 93 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/cmbright/ebpseudo.mf b/Master/texmf-dist/fonts/source/public/cmbright/ebpseudo.mf
new file mode 100644
index 00000000000..6e50a325589
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/cmbright/ebpseudo.mf
@@ -0,0 +1,93 @@
+% ebpseudo.mf
+% [= expseudo.mf, changed by Walter Schmidt, see (CMBR)]
+%
+% (c) Copyright 1995, 1996, 1997 J"org Knappen
+%
+% This file is part of the EC Bright fonts version 1.0
+%
+% This file contains pseudoparameters which are not entered in the
+% parameter files, but are computed from the initial parameter set.
+% There are also ad hoc parameters needed only once, and scratch
+% parameters with different values at each occuerence (like |theta|).
+%
+version_check(1,0); % |version_check| was introduced in dc1.3
+
+% Diameters of dots
+
+numeric idot_diam#,udot_diam#,pdot_diam#;
+% (CMBR)
+% |idot_diam#| for dots on i and j, must fit stem width
+% |udot_diam#| for the umlaut dots
+ pdot_diam#:=if monospace: 5/4 fi\\ dot_size#; % punctuation dots
+
+
+% |heavy_hair| occurs in italic lowercase `e'. Since there are many
+% accented versions of it, it is declared once here
+
+vardef heavy_hair=hround .2[hair,stem] enddef;
+
+% |qvair| (quotes vair) for the french quotes
+
+vardef qvair=max(round(xvair),fine+epsilon) enddef;
+
+% |limit_dist| is used in |put_accent| and |put_cross|
+% (the value of |u| is changed by |mono_adjust|, hence the global setting)
+
+vardef limit_dist=5/4u enddef;
+
+% (CMBR)
+% Don't compute lc_trema_height from x_height; leave it
+% to the designer to specify ldot_height,
+% then compute lc_trema_height:=x_height+ldot_height, but not > cap_height.
+% Just the same way as dot_height must be given for uppercase letters!
+numeric lc_trema_height#;
+lc_trema_height# = min(cap_height#,x_height#+ldot_height#);
+
+
+% More parametrisations for accents from csaccent.mf (csfonts):
+
+numeric uc_acc_height, uc_acc_height#,
+ lc_acute_height, lc_acute_height#,
+ lc_hachek_height, lc_hachek_height#,
+ accent_u, accent_u#,
+ accent_thin,
+ uc_acc_shift, asc_acc_shift;
+if unknown circ_weight: circ_weight:=1; fi
+
+%uc_acc_height# = cap_height#+asc_height#-x_height#;
+uc_acc_height# = cap_height#+acc_height#;
+lc_acute_height# = asc_height#;
+lc_hachek_height# = hi.x_height#+acc_height#;
+accent_u# = u#; % unexpanded dimension unit
+
+vardef accent_thin = if thin_join > crisp: thin_join else: crisp+eps fi enddef;
+
+vardef uc_acc_shift = cap_height - x_height enddef;
+vardef asc_acc_shift = asc_height - x_height enddef;
+
+numeric cap_accent_height, cap_accent_height#;
+%cap_accent_height# = uc_acc_height#;
+cap_accent_height# = cap_height# + acc_height#;
+
+% (CMBR)
+def pseudo_setup =
+ idot_diam:=stem';
+ idot_diam#:=stem'/hppp;
+ udot_diam:=min(stem', hround(.85dot_size));
+ udot_diam#:=udot_diam/hppp;
+ define_whole_blacker_pixels(pdot_diam);
+ define_whole_vertical_pixels(lc_trema_height);
+ define_whole_vertical_pixels(uc_acc_height,lc_acute_height,
+ lc_hachek_height);
+ define_pixels(accent_u);
+ define_whole_vertical_pixels(cap_accent_height);
+% LAST MINUTE EXTRA FONT SETUP
+%%% define_pixels prepare_pen
+if not serifs: fisp#:=1/3[fine#,crisp#]; define_whole_pixels(fisp);
+ prepare_pen fisp; fi
+if known ogonek_pen#:
+ define_whole_pixels(ogonek_pen); prepare_pen ogonek_pen;
+fi
+enddef;
+
+endinput;