‘壹’ 如何在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语言中如何导入图片
1、首先先在图片取模软件找到软件快捷方式,点击打开软件。
‘叁’ c-free5.0 怎么用
最简单的运用:
ctrl+n:新建一个文件
f5:运行
alt+x:关闭一个文件
总体来说,c-free5好多可以自己定制,比较方便
http://www.programarts.com/cfree_ch/index.htm
不会再具体问吧
‘肆’ 请问下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++语言的开源图像处理函数库OpenCV吧:
#include "cv.h"
#include "highgui.h"
int main( int argc, char** argv )
{
IplImage* pImg; //声明IplImage指针
//载入图像
if( argc == 2 &&
(pImg = cvLoadImage( argv[1], 1)) != 0 )
{
cvNamedWindow( "Image", 1 );//创建窗口
cvShowImage( "Image", pImg );//显示图像
cvWaitKey(0); //等待按键
cvDestroyWindow( "Image" );//销毁窗口
cvReleaseImage( &pImg ); //释放图像
return 0;
}
‘陆’ 请教一下Cfree 的具体用法 具体快捷键的用法。;
根据你的说明,我觉得你需要的是文本编辑的快捷键,这个不光是cfree,几乎所有的文本编辑都支持的,如下:
1、光标跳转快捷键
Home: 光标跳转至行首
End: 光标跳转至行尾
PgUp: 光标跳转至首行
PgDn: 光标跳转至末行
Ctrl + ← / → (方向键): 光标向左/向右跳转一个单词
Ctrl + Home: 光标跳转至首行首个字符前面(文件开头)
Ctrl + End: 光标跳转至末行最后一个字符后面(文件结尾)
2、光标选中快捷键
Shift + ← / → (方向键): 光标向左/向右选中一个字符
Ctrl + Shift + ← / → (方向键): 光标向左/向右选中一个单词
Shift + Home: 光标从当前位置一直选中到行首
Shift + End: 光标从当前位置一直选中到行尾
3、基本操作快捷键
Ctrl + Z: 撤销
Ctrl + Y: 重做
Ctrl + S: 保存
Ctrl + F: 查找
Ctrl + F3: 查找上一个
F3: 查找下一个
Ctrl + R: 替换
‘柒’ C语言如何导入图片,简单点
用习语言作为C工具,显示图片很简单,只需要下面一条语句就够了:图形显示位图(‘文件’,文件名,0,60,位图属性.宽,位图属性.高,0);下载个习语言编程工具,有显示图片,播放音乐等示例代码,都只有几行代码,很简单。
‘捌’ cfree5.0怎么给编译好了的可执行文件添加图标
你需要新建一个工程,仅仅一个cpp文件是没有用的,要新建工程:
‘玖’ 用c free 5.0如何添加一个梯度锐化函数,对图像进行梯度锐化
你的程序基本上没有什么大问题,[I,map]=imread('worldmap1.jpg'); 1.中间用了一个中文的小引号 2.是J(K)=255,我运行了一次后出现白色加上淡黄色的原图像,你做的就是灰度级的处理,我建议你改为j(k)=0;效果就是黑色的原图,但不是黑白二值图,是黑点构成的,我等级太低,没法给你发图,希望能帮到你!