在VC中用FreeImage显示图片的简单方法
来源:互联网 发布:nginx和keepalived结合 编辑:程序博客网 时间:2024/05/30 05:14
没什么想法,就是想找个偷懒的方法显示个图片,至少要支持bmp,最好顺带多支持几种格式类型,
本以为上网搜下就有了,结果还搞了半天。
没时间多写,贴个代码:
void test(CDC &dc)
{
const char imgName[64] = ".//1252.png";
int width;
int height;
// 获得图像文件的类型
FREE_IMAGE_FORMAT fifmt = FreeImage_GetFileType(imgName, 0);
// 加载此文件
FIBITMAP *dib = FreeImage_Load(fifmt, imgName,0);
if(dib == NULL) return;
// 对于不是24位的图片,强制转换成24位 , RGB
// 为了省事
dib = FreeImage_ConvertTo24Bits(dib);
BYTE *pixels;
width = FreeImage_GetWidth(dib);
height = FreeImage_GetHeight(dib);
pixels = FreeImage_GetBits(dib);
BITMAPINFO info;
memset(&info, 0, sizeof(BITMAPINFO));
info.bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
info.bmiHeader.biBitCount = 24;
info.bmiHeader.biPlanes = 1;
info.bmiHeader.biWidth = width;
info.bmiHeader.biHeight = height;
StretchDIBits(dc.GetSafeHdc(), 0, 0, width, height, 0, 0, width, height, pixels, &info, DIB_RGB_COLORS, SRCCOPY);
FreeImage_Unload(dib);
}
注:freeimage的库参见 http://freeimage.sourceforge.net/
- 在VC中用FreeImage显示图片的简单方法
- VC 中用 IPicture 在窗口中显示图片文件
- VC 中用 IPicture 在窗口中显示图片文件
- VC 中用 IPicture 在窗口中显示图片文件
- 在VC中显示和处理图片的方法
- 用FreeImage在图片中添加简单注释
- 在VC/C#中用反汇编的方法研究代码
- 在VC中用GDI+缩放图片文件
- 在SAP中用图型显示多层BOM的方法
- 在Excel 中用VBA插入图片的方法
- VC中打开一幅jpg图片并且显示在对话框上的方法和代码
- 在vc中用MFC按纽打开一个txt文件,在旁边的文本框里显示文件的路径的方法??
- 在vc中用MFC按纽打开一个txt文件,在旁边的文本框里显示文件的路径的方法
- VC图片控件中显示图片的方法
- vc 在对话框显示图片
- 最简单的显示图片方法
- 最简单的显示图片方法
- vc中用Class Wizard从其不显示的MFC类派生新类的方法
- Latex参考文献技巧(Latex编辑部)
- c++关于静态成员调用非静态成员的问题(c#参考,也可以使用)
- Latex参考文献FAQ
- get.cell
- work log 20101127
- 在VC中用FreeImage显示图片的简单方法
- Oracle计算时间差表达式
- 7-37-11-27-22.11.c
- LaTeX 参考文献的处理
- net use发生系统错误67,找不到网络名(ZT)
- A simple Connector
- C# Asp.net 中的Treeview 点击不刷新页面的
- C# Asp.net 中的Treeview 点击不刷新页面的
- Timer的schedule和scheduleAtFixedRate方法的区别解析