Commit | Line | Data |
---|---|---|
6f1a2a65 | 1 | /* font.c 4.2 83/02/12 */ |
386dfd66 BS |
2 | |
3 | # include "e.h" | |
4 | ||
5 | setfont(ch1) char ch1; { | |
6 | /* use number '1', '2', '3' for roman, italic, bold */ | |
7 | yyval = ft; | |
8 | if (ch1 == 'r' || ch1 == 'R') | |
9 | ft = ROM; | |
10 | else if (ch1 == 'i' || ch1 == 'I') | |
11 | ft = ITAL; | |
12 | else if (ch1 == 'b' || ch1 == 'B') | |
13 | ft = BLD; | |
14 | else | |
15 | ft = ch1; | |
16 | printf(".ft %c\n", ft); | |
6f1a2a65 | 17 | #ifndef NEQN |
386dfd66 | 18 | if(dbg)printf(".\tsetfont %c %c\n", ch1, ft); |
6f1a2a65 BS |
19 | #else NEQN |
20 | if(dbg)printf(".\tsetfont %c\n", ft); | |
21 | #endif NEQN | |
386dfd66 BS |
22 | } |
23 | ||
24 | font(p1, p2) int p1, p2; { | |
25 | /* old font in p1, new in ft */ | |
26 | yyval = p2; | |
27 | lfont[yyval] = rfont[yyval] = ft==ITAL ? ITAL : ROM; | |
28 | if(dbg)printf(".\tb:fb: S%d <- \\f%c S%d \\f%c b=%d,h=%d,lf=%c,rf=%c\n", | |
29 | yyval, ft, p2, p1, ebase[yyval], eht[yyval], lfont[yyval], rfont[yyval]); | |
30 | printf(".ds %d \\f%c\\*(%d\\f%c\n", | |
31 | yyval, ft, p2, p1); | |
32 | ft = p1; | |
33 | printf(".ft %c\n", ft); | |
34 | } | |
35 | ||
36 | fatbox(p) int p; { | |
37 | int sh; | |
38 | ||
39 | yyval = p; | |
40 | sh = ps / 4; | |
41 | nrwid(p, ps, p); | |
42 | printf(".ds %d \\*(%d\\h'-\\n(%du+%du'\\*(%d\n", p, p, p, sh, p); | |
43 | if(dbg)printf(".\tfat %d, sh=%d\n", p, sh); | |
44 | } | |
45 | ||
46 | globfont() { | |
47 | char temp[20]; | |
48 | ||
49 | getstr(temp, 20); | |
50 | yyval = eqnreg = 0; | |
51 | gfont = temp[0]; | |
52 | switch (gfont) { | |
53 | case 'r': case 'R': | |
54 | gfont = '1'; | |
55 | break; | |
56 | case 'i': case 'I': | |
57 | gfont = '2'; | |
58 | break; | |
59 | case 'b': case 'B': | |
60 | gfont = '3'; | |
61 | break; | |
62 | } | |
63 | printf(".ft %c\n", gfont); | |
64 | ft = gfont; | |
65 | } |