#include<graphics.h>
#include<conio.h>
#include<string.h>
class Gstring
{
protected:
char str[80];
int xco, yco;
int font;
int direction;
int size;
int color;
int horzjustify;
int vertjustify;
int multx, divx;
int multy,divy;
public:
Gstring()
{
str[0]='\0';
xco=0; yco=0;
font=DEFAULT_FONT;
direction= HORIZ_DIR;
size=4;
color=WHITE;
horzjustify=LEFT_TEXT;
vertjustify=TOP_TEXT;
multx=1; divx=1;
multy=1; divy=1;
}
void drawtext()
{
moveto(xco, yco);
settextstyle(font,direction,size);
setcolor(color);
settextjustify(horzjustify,vertjustify);
setusercharsize(multx, divx,multy,divy);
outtext(str);
}
void settext(char s[])
{
strcpy(str,s);
}
void setposition(int x,int y)
{
xco=x;yco=y;
}
void setfont(int f)
{
font=f;
}
void setdirection(int d)
{
direction=d;
}
void setsize(int s)
{
size=s;
}
void setcolor(int c)
{
color=c;
}
void sethjust(int hj)
{
horzjustify=hj;
}
void setvjust(int vj)
{
vertjustify=vj;
}
void sethorzsize(int m,int d)
{
size=0; multx=m; divx=d;
}
void setvertsize(int m, int d)
{
size= 0; multy=m; divy=d;
}
};
void main()
{
clrscr();
int driver,mode;
driver=DETECT;
initgraph(&driver, &mode, "\\tc\\bgi");
Gstring s1,s2,s3,s4,s5,s6;
s1.settext("default everything");
s2.settext("gothic font");
s2.setfont(GOTHIC_FONT);
s2.setposition(0, 75);
s3.settext("vertical sans serif");
s3.setfont(SANS_SERIF_FONT);
s3.setposition(600,0);
s3.setdirection(VERT_DIR);
s4.settext("centered triplex");
s4.setfont(TRIPLEX_FONT);
s4.setposition(300,150);
s4.sethjust(CENTER_TEXT);
s5.settext("centered sans serif");
s5.setfont(SANS_SERIF_FONT);
s5.setsize(6);
s5.setposition(300,225);
s5.sethjust(CENTER_TEXT);
s6.settext("tall and narrow triplex");
s6.setfont(TRIPLEX_FONT);
s6.setposition(0,300);
s6.sethorzsize(2,3);
s6.setvertsize(4,1);
s1.drawtext();
s2.drawtext();
s3.drawtext();
s4.drawtext();
s5.drawtext();
s6.drawtext();
getch();
closegraph();
}