c插圖風景
⑴ 請問下c語言如何實現插入圖片功能
C語言寫控制台程序是無法加圖片的,只能用命令行輸出,最多就是設置下背景和字體,顏色之類的。如果開發API窗口程序,完全依賴於操作系統的函數庫。C語言本身並不提供這類函數。
下面是windows系統下實現的函數代碼,第一個參數是圖片的存放的位置,第二個參數是窗口句柄。
HRESULTShowPic(char*lpstrFile,HWNDhWnd)
{
HDChDC_Temp=GetDC(hWnd);
IPicture*pPic;
IStream*pStm;
BOOLbResult;
HANDLEhFile=NULL;
DWORDdwFileSize,dwByteRead;
//打開圖形文件
hFile=CreateFile(lpstrFile,GENERIC_READ,
FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
if(hFile!=INVALID_HANDLE_VALUE)
{
dwFileSize=GetFileSize(hFile,NULL);//獲取文件位元組數
if(dwFileSize==0xFFFFFFFF)
returnE_FAIL;
}
else
{
returnE_FAIL;
}
//分配全局存儲空間
HGLOBALhGlobal=GlobalAlloc(GMEM_MOVEABLE,dwFileSize);
LPVOIDpvData=NULL;
if(hGlobal==NULL)
returnE_FAIL;
if((pvData=GlobalLock(hGlobal))==NULL)//鎖定分配內存塊
returnE_FAIL;
ReadFile(hFile,pvData,dwFileSize,&dwByteRead,NULL);//把文件讀入內存緩沖區
GlobalUnlock(hGlobal);
CreateStreamOnHGlobal(hGlobal,TRUE,&pStm);
//裝入圖形文件
bResult=OleLoadPicture(pStm,dwFileSize,TRUE,IID_IPicture,(LPVOID*)&pPic);
if(FAILED(bResult))
returnE_FAIL;
OLE_XSIZE_HIMETRIChmWidth;//圖片的真實寬度,單位為英寸
OLE_YSIZE_HIMETRIChmHeight;//圖片的真實高度,單位為英寸
pPic->get_Width(&hmWidth);
pPic->get_Height(&hmHeight);
//轉換hmWidth和hmHeight為pixels距離,1英寸=25.4毫米
intnWidth=MulDiv(hmWidth,GetDeviceCaps(hDC_Temp,LOGPIXELSX),2540);
intnHeight=MulDiv(hmHeight,GetDeviceCaps(hDC_Temp,LOGPIXELSY),2540);
//將圖形輸出到屏幕上(有點像BitBlt)
bResult=pPic->Render(hDC_Temp,0,0,nWidth,nHeight,0,hmHeight,hmWidth,-hmHeight,NULL);
hmHeight,NULL);
pPic->Release();
CloseHandle(hFile);//關閉打開的文件
if(SUCCEEDED(bResult))
{
returnS_OK;
}
else
{
returnE_FAIL;
}
}
⑵ 求c.c.的高清圖片 做壁紙用 越多越好
其他的清理空間刪了
⑶ 求幾張c.c的好看的圖片
自己截的。
⑷ c語言 關於插入圖片
哎,你說jpg的代碼我沒有,但是bmp的我有代碼呀!
⑸ C語言如何引用背景圖片
1、語言寫控制台程序是無法加圖片的,只能用命令行輸出,最多就是設置下背景和字體,顏色之類的。如果開發API窗口程序,完全依賴於操作系統的函數庫。C語言本身並不提供這類函數。
2、下面是windows系統下實現的函數代碼,第一個參數是圖片的存放的位置,第二個參數是窗口句柄。
HRESULTShowPic(char*lpstrFile,HWNDhWnd)
{
HDChDC_Temp=GetDC(hWnd);
IPicture*pPic;
IStream*pStm;
BOOLbResult;
HANDLEhFile=NULL;
DWORDdwFileSize,dwByteRead;
//打開圖形文件
hFile=CreateFile(lpstrFile,GENERIC_READ,
FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
if(hFile!=INVALID_HANDLE_VALUE)
{
dwFileSize=GetFileSize(hFile,NULL);//獲取文件位元組數
if(dwFileSize==0xFFFFFFFF)
returnE_FAIL;
}
else
{
returnE_FAIL;
}
//分配全局存儲空間
HGLOBALhGlobal=GlobalAlloc(GMEM_MOVEABLE,dwFileSize);
LPVOIDpvData=NULL;
if(hGlobal==NULL)
returnE_FAIL;
if((pvData=GlobalLock(hGlobal))==NULL)//鎖定分配內存塊
returnE_FAIL;
ReadFile(hFile,pvData,dwFileSize,&dwByteRead,NULL);//把文件讀入內存緩沖區
GlobalUnlock(hGlobal);
CreateStreamOnHGlobal(hGlobal,TRUE,&pStm);
//裝入圖形文件
bResult=OleLoadPicture(pStm,dwFileSize,TRUE,IID_IPicture,(LPVOID*)&pPic);
if(FAILED(bResult))
returnE_FAIL;
OLE_XSIZE_HIMETRIChmWidth;//圖片的真實寬度,單位為英寸
OLE_YSIZE_HIMETRIChmHeight;//圖片的真實高度,單位為英寸
pPic->get_Width(&hmWidth);
pPic->get_Height(&hmHeight);
//轉換hmWidth和hmHeight為pixels距離,1英寸=25.4毫米
intnWidth=MulDiv(hmWidth,GetDeviceCaps(hDC_Temp,LOGPIXELSX),2540);
intnHeight=MulDiv(hmHeight,GetDeviceCaps(hDC_Temp,LOGPIXELSY),2540);
//將圖形輸出到屏幕上(有點像BitBlt)
bResult=pPic->Render(hDC_Temp,0,0,nWidth,nHeight,0,hmHeight,hmWidth,-hmHeight,NULL);
hmHeight,NULL);
pPic->Release();
CloseHandle(hFile);//關閉打開的文件
if(SUCCEEDED(bResult))
{
returnS_OK;
}
else
{
returnE_FAIL;
}
}
⑹ 小紅從小芳的QQ空間里看到了幾幅風光圖片,下列哪一幅圖片景觀不在歐洲西部()A.B.C.D
A圖所示的是荷蘭的風車,B圖所示的是澳大利亞的悉尼歌劇院,C圖所示的是英國倫敦的塔橋,D圖所示的是法國的埃菲爾鐵塔,選項ACD不符合題意.
故選:B.
⑺ 描寫自然風景的古詩詞(四行),並配上插圖。
詩中山
1.千山鳥飛絕,萬徑人蹤滅。(柳宗元:《江雪》)
2.白日依山盡,黃河入海流。(王之渙:《登鸛雀樓》)
3.會當凌絕頂,一覽眾山小。(杜甫:《望岳》)
4.國破山河在,城春草木深。(杜甫:《春望》)
5.空山不見人,但聞人語響。(王維:《鹿柴》)
6.明月出天山,蒼茫雲海間。(李白:《關山月})
7.相看兩不厭,只有敬亭山。(李白:《獨坐敬亭山》)
8.種豆南山下,草盛豆苗稀。(陶淵明:《歸園田居》)
9.青山遮不住,畢竟東流去。(辛棄疾:《菩薩蠻&S226;書江西造口壁》))
10.不識廬山真面目,只緣身在此山中。(蘇軾:《題西林壁》)
詩中水
1.所謂伊人,在水一方。(《詩經&S226;蒹葭》)
2.水何澹澹,山島竦峙。(曹操:<觀滄海》)
3.白毛浮綠水,紅掌撥清波。(駱賓王:《詠鵝》)
4.天門中斷楚江開,碧水東流至此回。(李白:《望天門山》))
5.山重水復疑無路,柳暗花明又一村。(陸游:《游山西村》)
6.桃花潭水深千尺,不及汪倫送我情。(李白:《贈汪倫》)
7.楊柳青青江水平,聞郎江上唱歌聲。(劉禹錫:《竹枝詞》)
8.日出江花紅勝火,春來江水綠如藍。(白居易:《憶江南》)
詩中河
1.關關雎鳩,在河之洲。(《詩經&S226;關雎》)
2.國破山河在,城春草木深。(杜甫:《春望》)
3.大漠孤煙直,長河落日圓。(王維:《使至塞上》)
4.白日依山盡,黃河入海流。(王之渙:(登鸛雀樓》)
5.旦辭黃河去,暮宿黑山頭。((木蘭辭》)
6.無限山河淚,誰言天地寬。(夏完淳:《別雲間》)
7.飛流直下三千尺,疑是銀河落九天。(李白:《望廬山瀑布》)
8.蔞蒿滿地蘆芽短,正是河豚欲上時。(蘇軾:《題惠崇春江晚景》)
9.黃河遠上白雲間,一片孤城萬仞山。(王之渙:《涼州詞》)
10.三萬里河東人海,五千仞岳上摩天。(陸游:《秋夜將曉出籬門迎涼有感》)
詩中江
1.至今思項羽,不肯過江東。(李清照:《夏日絕句》)
2.孤舟蓑笠翁,獨釣寒江雪。(柳宗元:《江雪》)
3.野徑雲俱黑,江船火獨明。(杜甫:《春夜喜雨》)
4.江南好,風景舊曾諳。
日出江花紅勝火,春來江水綠如藍。(白居易:《憶江南))
5.竹外桃花三兩枝,春江水暖鴨先知。(蘇軾:《題惠崇<春江晚景)》)
6.朝辭白帝彩雲間,千里江陵一日還。(李白:《早發白帝城))
7.孤帆遠影碧空盡,唯見長江天際流。(李白:《送孟浩然之廣陵》)
8.月落烏啼霜滿天,江楓漁火對愁眠。(張繼:(楓橋夜泊》)
9.寒雨連江夜入吳,平明送客楚山孤。(王昌齡:《芙蓉樓送辛漸》)
10.正是江南好風景,落花時節又逢君。(杜甫:(江南逢李龜年))
詩中雲
1;明月出天山,蒼茫雲海間。(李白:《關山月))
2.眾鳥高飛盡,孤雲獨去閑。(李白:(獨坐敬亭山))
3.只在此山中,雲深不知處。(賈島:《尋隱者不遇))
4.野徑雲俱黑,江船火獨明。(杜甫:《春夜喜雨))
5.月下飛天鏡,雲生結海樓。(李白:《渡荊門送別))
6.千里黃雲白日曛,北風吹雁雪紛紛。(高適:《別董大》)
7.朝辭白帝彩雲間,千里江陵一日還。(李白:《早發白帝城》)
8.遠上寒山石徑斜,白雲深處有人家。(杜牧:《山行》)
9.黃河遠上白雲間,一片孤城萬仞山。(王之渙:《涼州詞》)
10.瀚海闌干百丈冰,愁雲慘淡萬里凝。(岑參:《白雪歌送武判官歸京》)
⑻ 跪求c.c高清圖片……越多越好……
⑼ C語言插入圖片
自己去研究研究吧,我只能做到這了,只能顯示16點陣圖
#include "stdio.h"
#include "graphics.h"
#include "alloc.h"
#include "stdlib.h"
#include "math.h"
/*頭部*/
typedef struct tagBITMAPFILEHEADER
{
unsigned int bfType;
unsigned long bfSize;
unsigned int bfReserved1;
unsigned int bfReserved2;
unsigned long bfOffBits;
}BITMAPFILEHEADER;
/*頭部信息*/
typedef struct tagBITMAPINFOHEADER
{
unsigned long biSize;
long biWidth;
long biHeight;
unsigned int biPanes;
unsigned int biBitCount;
unsigned long biCompression;
unsigned long biSizeImage;
long biXPelsPerMeter;
long biYPelsPerMeter;
unsigned long biClrUsed;
unsigned long biClrImportant;
}BITMAPINFOHEADER;
/*顏色*/
typedef struct tagRGBQUAD
{
unsigned char rgbBlue;
unsigned char rgbGreen;
unsigned char rgbRed;
unsigned char rgbReserved;
}RGBQUAD;
/*頭部組成*/
typedef struct tagBITMAPINFO
{
BITMAPINFOHEADER bmiHeader;
RGBQUAD bmiColors[];
}BITMAPINFO;
int xmax;
int ymax;
void InitGraph()/*圖形系統初始化*/
{
int mod=EGA;
int dr=EGAHI;
initgraph(&mod,&dr,"");
xmax=getmaxx();
ymax=getmaxy();
}
void CloseGraph()/*關閉圖形系統*/
{
closegraph();
}
void Exit(char *ErrorCode)
{
printf("%s",ErrorCode);
getch();
exit(0);
}
long WidthBytes(long Width,int BitCount) /*寬度(位元組)*/
{
long WBytes;
WBytes=(Width*BitCount+31)/8;
WBytes=WBytes/4*4;
return WBytes;
}
unsigned char SetPalette(int Colors,unsigned char data)
{
switch(Colors)
{
case 16:
switch(data)
{
case 1:
return 4;
case 4:
return 1;
case 3:
return 6;
case 6:
return 3;
case 9:
return 12;
case 12:
return 9;
case 11:
return 14;
case 14:
return 11;
default:
return data;
}
case 2:
if(data==1)
return 15;
else
return 0;
}
}
void main()
{
long i,j;
long WBytes;
int Colors;
long Height,Width;
FILE *fp;
void *Temp=NULL;
BITMAPFILEHEADER bfh;
BITMAPINFOHEADER bih;
unsigned char Srcdata,data;
InitGraph();
if((fp=fopen("1.bmp","rb"))==NULL)
{
Exit("Can Not Open The File.\
");
}
fread(&bfh,sizeof(BITMAPFILEHEADER),1,fp);
if(bfh.bfType!='M'*256+'B')
{
Exit("This Is Not A Bmp File.\
");
}
fread(&bih,sizeof(BITMAPINFOHEADER),1,fp);
Height=bih.biHeight;
Width=bih.biWidth;
WBytes=WidthBytes(Width,bih.biBitCount);
Colors=1<<bih.biBitCount;
if(!(Colors==16||Colors==2))
{
Exit("This Programme Only For 16 Colors Bitmap.\
");
}
fread(Temp,sizeof(RGBQUAD),Colors,fp);
printf("%d %d",'\\f','\\t');
for(i=Height-1;i>=0;i--)
{
fseek(fp,54+Colors*sizeof(RGBQUAD)+i*WBytes,SEEK_SET);
for(j=0;j<Width;j++)
{
switch(Colors)
{
case 16:
if(j%2==0)
{
fread(&SrcData,1,1,fp);
data=SetPalette(Colors,SrcData/16);
putpixel(j,Height-1-i,data);
}
else
{
data=SetPalette(Colors,SrcData%16);
putpixel(j,Height-1-i,data);
}
break;
case 2:
if(j%8==0)
{
fread(&SrcData,1,1,fp);
data=SetPalette(Colors,(SrcData>>7)%2);
putpixel(j,Height-1-i,data);
}
else
{
data=SetPalette(Colors,(SrcData>>(7-j%8))%2);
putpixel(j,Height-1-i,data);
}
}
}
}
getch();
CloseGraph();
}