|  | 
 
 
 楼主|
发表于 2004-5-10 16:39:59
|
显示全部楼层 
| <  >函数名: settextjustify 功  能: 为图形函数设置文本的对齐方式
 用  法: void far settextjustify(int horiz, int vert);
 程序例: <
  >#include <graphics.h> #include <stdlib.h>
 #include <stdio.h>
 #include <conio.h> <
  >/* function prototype */ void xat(int x, int y); <P>/* horizontal text justification settings */
 char *hjust[] = { "LEFT_TEXT",
 "CENTER_TEXT",
 "RIGHT_TEXT"
 }; <P>/* vertical text justification settings */
 char *vjust[] = { "LEFT_TEXT",
 "CENTER_TEXT",
 "RIGHT_TEXT"
 }; <P>int main(void)
 {
 /* request auto detection */
 int gdriver = DETECT, gmode, errorcode;
 int midx, midy, hj, vj;
 char msg[80]; <P>   /* initialize graphics and local variables */
 initgraph(&gdriver, &gmode, ""); <P>   /* read result of initialization */
 errorcode = graphresult();
 if (errorcode != grOk)  /* an error occurred */
 {
 printf("Graphics error: %s\n", grapherrormsg(errorcode));
 printf("Press any key to halt:");
 getch();
 exit(1); /* terminate with an error code */
 } <P>   midx = getmaxx() / 2;
 midy = getmaxy() / 2; <P>   /* loop through text justifications */
 for (hj=LEFT_TEXT; hj<=RIGHT_TEXT; hj++)
 for (vj=LEFT_TEXT; vj<=RIGHT_TEXT; vj++)
 {
 cleardevice();
 /* set the text justification */
 settextjustify(hj, vj); <P>         /* create a message string */
 sprintf(msg, "%s  %s", hjust[hj], vjust[vj]); <P>  /* create cross hairs on the screen */
 xat(midx, midy); <P>         /* output the message */
 outtextxy(midx, midy, msg);
 getch();
 } <P>   /* clean up */
 closegraph();
 return 0;
 } <P>/* draw an "x" at (x, y) */
 void xat(int x, int y)
 {
 line(x-4, y, x+4, y);
 line(x, y-4, x, y+4);
 }
 
 </P>
 | 
 |