#include graphics.h
創新互聯-專業網站定制、快速模板網站建設、高性價比鎮遠網站開發、企業建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式鎮遠網站制作公司更省心,省錢,快速模板網站建設找我們,業務覆蓋鎮遠地區。費用合理售后完善,十余年實體公司更值得信賴。
int main()
{
int gdriver, gmode;
gdriver=VGA;
gmode=VGAHI;
initgraph(gdriver, gmode, "c:\\tc");
bar3d(100, 100, 300, 250, 50, 1); /*畫一長方體*/
getch();
closegraph();
return 0;
}
有時編程者并不知道所用的圖形顯示器適配器種類, 或者需要將編寫的程序 用于不同圖形驅動器, Turbo C提供了一個自動檢測顯示器硬件的函數, 其調用
格式為:
void far detectgraph(int *gdriver, *gmode);
其中gdriver和gmode的意義與上面相同。
例5. 自動進行硬件測試后進行圖形初始化
#include graphics.h
int main()
{
int gdriver, gmode;
detectgraph(gdriver, gmode); /*自動測試硬件*/
printf("the graphics driver is %d, mode is %d\n", gdriver, gmode); /*輸出測試結果*/
getch();
initgraph(gdriver, gmode, "c:\\tc");
/* 根據測試結果初始化圖形*/
bar3d(10, 10, 130, 250, 20, 1);
getch();
closegraph();
return 0;
}
上例程序中先對圖形顯示器自動檢測, 然后再用圖形初始化函數進行初始化設置, 但Turbo C提供了一種更簡單的方法, 即用gdriver= DETECT 語句后再跟 initgraph()函數就行了。采用這種方法后, 上例可改為:
例6.
#include graphics.h
int main()
{
int gdriver=DETECT, gmode;
initgraph(gdriver, gmode, "c:\\tc");
bar3d(50, 50, 150, 30, 1);
getch();
closegraph();
return 0;
}
另外, Turbo C提供了退出圖形狀態的函數closegraph(), 其調用格式為:void far closegraph(void);調用該函數后可退出圖形狀態而進入文本方式(Turbo C 默認方式), 并釋放用于保存圖形驅動程序和字體的系統內存。
c語言調用圖片函數
據我所知Matlab有,imshow(),c好象沒有,c只能先將圖片讀到內存中,經過相關處理后以一定的格式保存到硬盤中,然后再打開圖片.
讀圖和存圖需要有專門的函數,這些可以參考:
unsigned
char*
ReadBMPData(int
Width,
int
Height,
char
*fname)//圖像的寬和高,圖像的位置(包括后綴)
{
unsigned
char*
image
=
new
unsigned
char[Width*Height];
FILE
*fp;
fp
=
fopen(fname,
"rb");
fread(image,
1,
Width*Height,
fp);
fclose(fp);
return
image;
}
///////////////////////////
void
WriteRawData(unsigned
char*
image,
int
Width,
int
Height,
char
*fname)
{
FILE
*fp;
fp
=
fopen(fname,
"wb");
fwrite(image,
1,
Width*Height,
fp);
fclose(fp);
}
#include
using namespace std;
#define Twoto1(i,j,w) i*w+j
void createimage(unsigned char *img, int w, int h)
{img = new unsigned char[w*h];}
void delateimage(unsigned char*img)
{delete []img;}
void readimage(unsigned char*img, int w, int h, char *fname)
{
FILE *fp;
fopen_s(fp,fname, "rb");
if (fp == NULL){ cout "error" endl; return; }
size_t result;
result=fread(img , sizeof(unsigned char), w*h, fp);
if (result != w*h)
{
cout "Reading error" endl;
return;
}
else
cout "Reading Ok!" endl;
fclose(fp);
}
void mobanjuanji(unsigned char image, unsigned char*image1, int w, int h, float moban[5][5])
{
for (int i = 0; i for (int j = 0; j if (iw - 3 || jh - 3)
image1[Twoto1(i,j,w)] = 0;
else
{
float temp = 0;
for (int m = 0; m5; m++)
for (int n = 0; n5; n++)
{
temp += (image[Twoto1(i-2+m,j-2+n,w)] moban[m][n]);
}
if (temp255) image1[Twoto1(i, j, w)] = 255;
else if (temp0) image1[Twoto1(i, j, w)] = 0;
else image1[Twoto1(i, j, w)] = temp;
}
}
void saveimage(unsigned char *img, int w, int h, char *fname)
{
FILE *fp;
fopen_s(fp, fname, "wb");
if (fp == NULL) { cout "error" endl; return; }
size_t result;
result = fwrite(img, sizeof(unsigned char), w*h, fp);
if (result != w*h)
{
cout "Write error" endl;
return;
}
else
cout "Write Ok!" endl;
fclose(fp);
}
void main()
{
unsigned char *img;
unsigned char *img1;
float moban[5][5] = { {0,0,0,0,0},{0, -1, 0, 1, 0 }, { 0, -2, 0, 2, 0 }, { 0, -1, 0, 1, 0 }, { 0,0,0,0,0 } };
//float moban[5][5] = { 0 };
int w = 512, h = 512;
createimage(img, w, h);
createimage(img1, w, h);
readimage(img, w, h, "E:\ss.raw");
mobanjuanji(img, img1,w, h, moban);
saveimage(img, w, h, "E:\ss_1.raw");
saveimage(img1, w, h, "E:\ss_2.raw");
delateimage(img);
delateimage(img1);
}
擴展資料
C語言實現一個圖片的讀出和寫入
#include stdlib.h
#include windows.h
int file_size(char* filename)//獲取文件名為filename的文件大小。
{
FILE *fp = fopen(filename, "rb");//打開文件。
int size;
if(fp == NULL) // 打開文件失敗
return -1;
fseek(fp, 0, SEEK_END);//定位文件指針到文件尾。
size=ftell(fp);//獲取文件指針偏移量,即文件大小。
fclose(fp);//關閉文件。
return size;
}
int main ()
{
int size=0;
size=file_size("qw");
printf("%d\n",size);
FILE * pFile,*qw;
char *buffer=(char*)malloc(sizeof(char)*size);
qw? ?=fopen("qw","r");
pFile = fopen ( "qwe" , "wb" );
printf("%d==\n",pFile);
printf("%d\n",size);
fread(buffer,1,size,qw);
fwrite (buffer , sizeof(byte), size , pFile );
fclose (pFile);
rename("qwe","Groot.jpg");
return 0;
}
分享題目:c語言打開圖片的函數 c語言打開圖片的源代碼
網站路徑:http://vcdvsql.cn/article34/dopihpe.html
成都網站建設公司_創新互聯,為您提供移動網站建設、外貿建站、定制開發、外貿網站建設、面包屑導航、網站制作
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯