summaryrefslogtreecommitdiff
path: root/fonts/georgian/mxedruli/mf/mxedbase.mf
blob: 483952c9c361ec71cef4563ca17dffa2007e1c33 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
% Mxedruli Base File `mxedbase.mf'
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Designed by Johannes Heinecke                                             %
%             <johannes.heinecke@wanadoo.fr>                                %
% This software is under the LaTeX Project Public License                   %
% Please send any improvements, corrections, suggestions, enhancements etc  %
% to the Author!                                                            %
%                                                                           %
% Version 2.0 as of 16th June 1995                                          %
%                                                                           %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%

mxedbase:=1;         % Es soll nur einmal geladen werden.

newinternal slant;

def font_mxed_setup =        % Eigenes Macro
  define_pixels(mxu, mxlittle, mxhalf, mxone, mxheight, mxthird,
                mxmiddle, mxtop, mxfeet, mxlow, mxzw);
  define_blacker_pixels(px1, py1, dpx1, dpy1, pdot, pdash);

  pickup pencircle xscaled px1 yscaled py1 rotated -10; % was -10
  mxed_pen:=savepen;
  pickup pencircle xscaled px1 yscaled .7py1 rotated -10; % was -10
  mxed_finepen:=savepen;
  pickup pencircle xscaled px1 yscaled py1 rotated -100; % was -10
  mxed_penturned:=savepen;

  pickup pencircle xscaled dpx1 yscaled dpy1 rotated -10; 
  mxed_digitpen:=savepen;     % Pen for digits and punctuation

  pickup pencircle scaled pdot;
  mxed_dot:=savepen;          % Pen for dots

  pickup pencircle scaled pdash;
  mxed_dash:=savepen;         % Pen for lines


  pickup pensquare scaled pdash;
  mxed_square:=savepen;

  pickup pencircle xscaled px1 yscaled py1;
  mxed_pencc:=savepen;

  currenttransform:=identity slanted slant yscaled aspect_ratio;
enddef;



if known cmbase:
 def makebox(text rule) =
  for y=0,h,mxlittle,-d,mxthird:
    rule((0,y)t_,(r,y)t_); endfor % horizontals
  for x=0,r,r-mxzw,mxhalf,mxone:
    rule((x,-d)t_,(x,h)t_); endfor % verticals
 % for x=u*(1+floor(l/u)) step u until r-1:
 %  rule((x,-body_depth)t_,(x,body_height)t_); endfor % more verticals
 % if charic<>0:
 %  rule((r+charic*pt,h.o_),(r+charic*pt,.5h.o_)); fi % italic correction
  enddef;
else:
 def makebox(text r) =
   % horizontal lines on y-values:
   % 0, char-height, char-depth, mxlittle, ...
   for y=0%,h.o_,-d.o_
        ,mxlittle,mxthird, mxheight,-mxlow: r((0,y),(w,y)); endfor 
   % vertical lines on x-values:
   % 0, char-width, char-width - mxzw
%   for x=0,w,w-mxzw, mxhalf, mxone:   r((x,-d.o_),(x,h.o_)); endfor 
   for x=0,w, mxhalf, mxone:   r((x,-mxlow),(x,mxheight)); endfor 
   if charic<>0: r((w+charic*hppp,h.o_),(w+charic*hppp,.5h.o_)); fi
 enddef;
fi


endinput;