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();
}