⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 graphic.h

📁 C语言库函数介绍
💻 H
📖 第 1 页 / 共 2 页
字号:
参数说明:     color-填充颜色,pattern-填充数据数组指针,一般为8个字节,
	      当该数据上的某位为1时,填充以color所指定的颜色.
所属文件:     <graphics.h>

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

int main()
{
   int gdriver=DETECT,gmode,errorcode;
   int maxx,maxy;
   /* 这是一个8*8点阵的‘Tc’ */
   char pattern[8]={0x00,0x70,0x20,0x27,0x24,0x24,0x07,0x00};
   initgraph(&gdriver,&gmode,"");
   errorcode=graphresult();
   if (errorcode!=grOk)
   {
      printf("Graphics error: %s\n",grapherrormsg(errorcode));
      printf("Press any key to halt:");
      getch();
      exit(1);
   }
   maxx=getmaxx();
   maxy=getmaxy();
   setcolor(getmaxcolor());
   setfillpattern(pattern,getmaxcolor());
   bar(0,0,maxx,maxy);
   getch();
   pattern[4]-=1;
   pattern[5]-=3;
   pattern[6]+=3;
   pattern[7]-=4;
   setfillpattern(pattern,getmaxcolor());
   bar(0,0,maxx,maxy);
   getch();
   closegraph();
   return 0;
}


@函数名称:     setfillstyle
函数原型:     void far setfillstyle(int pattern,int color)
函数功能:     设置填充模式和填充颜色
函数返回:
参数说明:     color-填充颜色   pattern-填充模式
所属文件:     <graphics.h>

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main()
{
    int gdriver=DETECT,gmode,errorcode;
    int maxx,maxy;
    char pattern[8]={0x00,0x70,0x20,0x27,0x24,0x24,0x07,0x00};
    initgraph(&gdriver,&gmode,);
    errorcode=graphresult();
    if (errorcode!=grOk)
    {
        printf("Graphics error: %s",grapherrormsg(errorcode));
        printf("Press any key to halt:");
        getch();
        exit(1);
    }
    maxx=getmaxx();
    maxy=getmaxy();
    setcolor(getmaxcolor());
    setfillpattern(pattern,getmaxcolor());
    bar(0,0,maxx,maxy);
    getch();
    closegraph();
    return 0;
}


@函数名称:     settextstyle
函数原型:     void far settextstyle(int font, int direction, int charsize)
函数功能:     设置图形模式下字符显示底字体、方向和大小
函数返回:
参数说明:     font-显示字体,取值如下:
		DEFAULT_FONT   =0   8x8 点阵
		TRIPLEX_FONT   =1   三倍笔划
		SMALL_FONT     =2   小号字体
		SANS_SERIF_FONT=3   无衬线字体
		GOTHIC_FONT    =4   哥特字体
		directiom 显示方向,取值如下:
		HORIZ_DIR      =0   水平显示 
		VERT_DIR       =1   垂直显示
		charsize 字体放大倍数,取值为0-10
所属文件:     <graphics.h>

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
void xat(int x,int y);
char *hjust[]={"LEFT_TEXT","CENTER_TEXT","RIGHT_TEXT"};
char *vjust[]={"LEFT_TEXT","CENTER_TEXT","RIGHT_TEXT"};
int main()
{
    int gdriver=DETECT,gmode,errorcode;
    int midx,midy,hj,vj;
    char msg[80];
    initgraph(&gdriver,&gmode,);
    errorcode=graphresult();
    if (errorcode!=grOk)
    {
        printf("Graphics error: %s",grapherrormsg(errorcode));
        printf("Press any key to halt:");
        getch();
        exit(1);
    }
    midx=getmaxx()/2;
    midy=getmaxy()/2;
    for (hj=LEFT_TEXT;hj<=RIGHT_TEXT;hj++)
        for (vj=LEFT_TEXT;vj<=RIGHT_TEXT;vj++)
        {
            cleardevice();
            settextjustify(hj,vj);
            sprintf(msg,"%s  %s",hjust[hj],vjust[vj]);
            xat(midx,midy);
            outtextxy(midx,midy,msg);
            getch();
        }
    closegraph();
    return 0;
}


@函数名称:     gettextsettings
函数原型:     void far gettextsettings(struct textsettingstype far *texttypeinfo)
函数功能:     得到当前图形模式下的文字显示设置信息
函数返回:
参数说明:     texttypeinfo-文字显示设置信息,该结构的定义如下:
		struct textsettingstype{
		int font;  /*显示字体*/
		int direction; /*方向*/
		int charsize;  /*大小*/
		int horiz;    /*水平对齐*/
		int vert;    /*垂直对齐*/
	        };
所属文件:     <graphics.h>

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

char *font[]={"DEFAULT_FONT","TRIPLEX_FONT","SMALL_FONT","SANS_SERIF_FONT","GOTHIC_FONT"};
char *dir[]={"HORIZ_DIR","VERT_DIR"};
char *hjust[]={"LEFT_TEXT","CENTER_TEXT","RIGHT_TEXT"};
char *vjust[]={"BOTTOM_TEXT","CENTER_TEXT","TOP_TEXT"};

int main()
 {
    int gdriver=DETECT,gmode,errorcode;
    struct textsettingstype textinfo;
    int midx,midy,ht;
    char fontstr[80],dirstr[80],sizestr[80];
    char hjuststr[80],vjuststr[80];

    initgraph(&gdriver,&gmode,"");

    errorcode=graphresult();
    if (errorcode!=grOk)
    {
       printf("Graphics error: %s\n",grapherrormsg(errorcode));
       printf("Press any key to halt:");
       getch();
       exit(1); /* terminate with an error code */
    }

    midx=getmaxx()/2;
    midy=getmaxy()/2;

    gettextsettings(&textinfo);

    sprintf(fontstr,"%s is the text style.",font[textinfo.font]);
    sprintf(dirstr,"%s is the text direction.",dir[textinfo.direction]);
    sprintf(sizestr,"%d is the text size.",textinfo.charsize);
    sprintf(hjuststr,"%s is the horizontal justification.",hjust[textinfo.horiz]);
    sprintf(vjuststr,"%s is the vertical justification.",vjust[textinfo.vert]);

    ht=textheight("W");
    settextjustify(CENTER_TEXT,CENTER_TEXT);
    outtextxy(midx,midy,fontstr);
    outtextxy(midx,midy+2*ht,dirstr);
    outtextxy(midx,midy+4*ht,sizestr);
    outtextxy(midx,midy+6*ht,hjuststr);
    outtextxy(midx,midy+8*ht,vjuststr);

    getch();
    closegraph();
    return 0;
}


@函数名称:     outtext
函数原型:     void far outtext(char far *textstring)
函数功能:     图形模式下在当前位置(视口)显示一行字符串
函数返回:
参数说明:     textstring-要显示的字符串
所属文件:     <graphics.h>
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main()
{
    int gdriver=DETECT,gmode,errorcode;
    int midx,midy;
    initgraph(&gdriver,&gmode,);
    errorcode=graphresult();
    if (errorcode!=grOk)
    {
        printf("Graphics error: %s",grapherrormsg(errorcode));
       printf("Press any key to halt:");
         getch();
        exit(1);
    }
    midx=getmaxx()/2;
    midy=getmaxy()/2;
    moveto(midx,midy);
    outtext("This");
    outtext("is");
    outtext("a");
    outtext("test.");
    getch();
    closegraph();
    return 0;
}


@函数名称:     outtextxy
函数原型:     void far outtextxy(int x, int y, char far *textstring)
函数功能:     图形模式下在x,y坐标位置显示一行字符串
函数返回:
参数说明:     x,y-显示的位置,textstring-要显示的字符串
所属文件:     <graphics.h>

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main()
{
    int gdriver=DETECT,gmode,errorcode;
    int midx,midy;
    initgraph(&gdriver,&gmode,);
    errorcode=graphresult();
    if (errorcode!=grOk)
    {
        printf("Graphics error: %s",grapherrormsg(errorcode));
        printf("Press any key to halt:");
        getch();
        exit(1);
    }
    midx=getmaxx()/2;
    midy=getmaxy()/2;
    outtextxy(midx,midy,"This is a test.");
    getch();
    closegraph();
    return 0;
}


@函数名称:     registerbgifont
函数原型:     int registerbgifont(void (*font)(void))
函数功能:     注册已连接的字体驱动器程序
函数返回:
参数说明:     font-字体驱动器函数
所属文件:     <graphics.h>

#include <graphics.h>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int main()
{
	int gdriver=DETECT,gmode,errorcode;
	int midx,midy,size;
	errorcode=registerbgifont(sansserif_font);
	if (errorcode<0){
	printf("Graphics error: %s\n",grapherrormsg(errorcode));
	printf("Press any key to halt:");
	getch();
	exit(1);
	}

	initgraph(&gdriver,&gmode,"");

	errorcode=graphresult();
	if (errorcode != grOk){
	 printf("Graphics error: %s\n",grapherrormsg(errorcode));
	 printf("Press any key to halt:");
	 getch();
	 exit(1);
	}

	midx=getmaxx()/2;
	midy=getmaxy()/2;
	size=4;
	settextjustify(CENTER_TEXT,CENTER_TEXT);
	settextstyle(SANS_SERIF_FONT,HORIZ_DIR,size);
	outtextxy(midx,midy,"SANSSERIF");
	getch();
	closegraph();
	return 0;
}


@函数名称:     settextjustify
函数原型:     void far settextjustify(int horiz, int vert)
函数功能:     设置图形方式下的字符显示对齐方式
函数返回:
参数说明:     horiz 水平对齐模式,vert 垂直对齐模式,含义如下:
		水平:		 		垂直:
		LEFT_TEXT  =0 左对齐	BOTTOM_TEXT=0 底对齐 
		CENTER_TEXT=1 中央对齐	CENTER_TEXT=1 中间对齐
		RIGHT_TEXT =2 右对齐	TOP_TEXT   =2   顶对齐
所属文件:     <graphics.h>

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

void xat(int x, int y);

char *hjust[]={"LEFT_TEXT","CENTER_TEXT","RIGHT_TEXT"};
char *vjust[]={"LEFT_TEXT","CENTER_TEXT","RIGHT_TEXT"};

int main()
{
    int gdriver=DETECT,gmode,errorcode;
    int midx,midy,hj,vj;
    char msg[80];

    initgraph(&gdriver,&gmode,"");

    errorcode=graphresult();
    if (errorcode != grOk)
    {
       printf("Graphics error: %s\n",grapherrormsg(errorcode));
       printf("Press any key to halt:");
       getch();
       exit(1);
    }

    midx=getmaxx()/2;
    midy=getmaxy()/2;

    for (hj=LEFT_TEXT;hj<=RIGHT_TEXT;hj++)
       for (vj=LEFT_TEXT;vj<=RIGHT_TEXT;vj++)
       {
          cleardevice();
          settextjustify(hj,vj);
          sprintf(msg,"%s  %s",hjust[hj],vjust[vj]);
          xat(midx, midy);
          outtextxy(midx, midy, msg);
          getch();
       }
    closegraph();
    return 0;
 }
/* 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);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -