Blame


1 4314729d 2004-04-14 devnull /*
2 4314729d 2004-04-14 devnull t string Place the string so that its first character is
3 4314729d 2004-04-14 devnull centered on the current point (default). If
4 4314729d 2004-04-14 devnull string begins with `\C' (`\R'), it is centered
5 4314729d 2004-04-14 devnull (right-adjusted) on the current point. A
6 4314729d 2004-04-14 devnull backslash at the beginning of the string may be
7 4314729d 2004-04-14 devnull escaped with another backslash.
8 4314729d 2004-04-14 devnull */
9 4314729d 2004-04-14 devnull #include "mplot.h"
10 4314729d 2004-04-14 devnull void text(char *s){
11 4314729d 2004-04-14 devnull register int kx, ky;
12 4314729d 2004-04-14 devnull int centered, right, more;
13 4314729d 2004-04-14 devnull char *ss;
14 4314729d 2004-04-14 devnull ss=s;
15 4314729d 2004-04-14 devnull for(;;){
16 4314729d 2004-04-14 devnull centered=right=more=0;
17 4314729d 2004-04-14 devnull if(*ss=='\\'){
18 4314729d 2004-04-14 devnull ss++;
19 4314729d 2004-04-14 devnull switch(*ss){
20 4314729d 2004-04-14 devnull case 'C': centered++; ss++; break;
21 4314729d 2004-04-14 devnull case 'R': right++; ss++; break;
22 4314729d 2004-04-14 devnull case 'L': ss++; break;
23 4314729d 2004-04-14 devnull case 'n': --ss; break;
24 4314729d 2004-04-14 devnull }
25 4314729d 2004-04-14 devnull }
26 4314729d 2004-04-14 devnull for(s=ss;*ss!='\0';ss++)
27 4314729d 2004-04-14 devnull if(ss[0]=='\\' && ss[1]=='n'){
28 4314729d 2004-04-14 devnull more++;
29 4314729d 2004-04-14 devnull break;
30 4314729d 2004-04-14 devnull }
31 4314729d 2004-04-14 devnull kx = SCX(e1->copyx);
32 4314729d 2004-04-14 devnull ky = SCY(e1->copyy);
33 4314729d 2004-04-14 devnull ky=m_text(kx, ky, s, ss, e1->foregr, centered, right);
34 4314729d 2004-04-14 devnull if(!more)break;
35 4314729d 2004-04-14 devnull e1->copyy = ( (double)(ky) - e1->bottom)/e1->scaley + e1->ymin + .5;
36 4314729d 2004-04-14 devnull move(e1->copyx, e1->copyy);
37 4314729d 2004-04-14 devnull ss+=2;
38 4314729d 2004-04-14 devnull }
39 4314729d 2004-04-14 devnull }