1*48252Sbostic /*-
2*48252Sbostic * Copyright (c) 1991 The Regents of the University of California.
3*48252Sbostic * All rights reserved.
4*48252Sbostic *
5*48252Sbostic * %sccs.include.proprietary.c%
6*48252Sbostic */
7*48252Sbostic
814485Ssam #ifndef lint
9*48252Sbostic static char sccsid[] = "@(#)font.c 4.4 (Berkeley) 04/17/91";
10*48252Sbostic #endif /* not lint */
1111002Sshannon
1211002Sshannon # include "e.h"
1311002Sshannon
setfont(ch1)1411002Sshannon setfont(ch1) char ch1; {
1511002Sshannon /* use number '1', '2', '3' for roman, italic, bold */
1611002Sshannon yyval = ft;
1711002Sshannon if (ch1 == 'r' || ch1 == 'R')
1811002Sshannon ft = ROM;
1911002Sshannon else if (ch1 == 'i' || ch1 == 'I')
2011002Sshannon ft = ITAL;
2111002Sshannon else if (ch1 == 'b' || ch1 == 'B')
2211002Sshannon ft = BLD;
2311002Sshannon else
2411002Sshannon ft = ch1;
2511002Sshannon printf(".ft %c\n", ft);
2611023Sshannon #ifndef NEQN
2711002Sshannon if(dbg)printf(".\tsetfont %c %c\n", ch1, ft);
2811023Sshannon #else NEQN
2911023Sshannon if(dbg)printf(".\tsetfont %c\n", ft);
3011023Sshannon #endif NEQN
3111002Sshannon }
3211002Sshannon
font(p1,p2)3311002Sshannon font(p1, p2) int p1, p2; {
3411002Sshannon /* old font in p1, new in ft */
3511002Sshannon yyval = p2;
3611002Sshannon lfont[yyval] = rfont[yyval] = ft==ITAL ? ITAL : ROM;
3711002Sshannon if(dbg)printf(".\tb:fb: S%d <- \\f%c S%d \\f%c b=%d,h=%d,lf=%c,rf=%c\n",
3811002Sshannon yyval, ft, p2, p1, ebase[yyval], eht[yyval], lfont[yyval], rfont[yyval]);
3911002Sshannon printf(".ds %d \\f%c\\*(%d\\f%c\n",
4011002Sshannon yyval, ft, p2, p1);
4111002Sshannon ft = p1;
4211002Sshannon printf(".ft %c\n", ft);
4311002Sshannon }
4411002Sshannon
fatbox(p)4511002Sshannon fatbox(p) int p; {
4611002Sshannon int sh;
4711002Sshannon
4811002Sshannon yyval = p;
4911002Sshannon sh = ps / 4;
5011002Sshannon nrwid(p, ps, p);
5111002Sshannon printf(".ds %d \\*(%d\\h'-\\n(%du+%du'\\*(%d\n", p, p, p, sh, p);
5211002Sshannon if(dbg)printf(".\tfat %d, sh=%d\n", p, sh);
5311002Sshannon }
5411002Sshannon
globfont()5511002Sshannon globfont() {
5611002Sshannon char temp[20];
5711002Sshannon
5811002Sshannon getstr(temp, 20);
5911002Sshannon yyval = eqnreg = 0;
6011002Sshannon gfont = temp[0];
6111002Sshannon switch (gfont) {
6211002Sshannon case 'r': case 'R':
6311002Sshannon gfont = '1';
6411002Sshannon break;
6511002Sshannon case 'i': case 'I':
6611002Sshannon gfont = '2';
6711002Sshannon break;
6811002Sshannon case 'b': case 'B':
6911002Sshannon gfont = '3';
7011002Sshannon break;
7111002Sshannon }
7211002Sshannon printf(".ft %c\n", gfont);
7311002Sshannon ft = gfont;
7411002Sshannon }
75