标题:QT新手紧急请教图片显示问题,多谢了.
作者:chris
日期:2006-08-06 15:55
内容:
如果知道图片的宽度,长度,每个像素点的字节数和每个像素点的RGB值,请问如何在QT中显示出图像?
例:一2*3的8bit图像块,即长度为2,宽度为3,每个像素点的字节数为1,图像数据为{0x12,0x23,0x34,0x45,0x56,0x67}
#1 [XChinux 08-06 16:53]
xpm图像可以使用C源代码形式表现,可以直接使用在程序中,你可以搜索一下关于XPM格式图像C源代码格式的东西。
#2 [chris 08-06 16:58]
谢谢 XChinux .
1 能讲具体点吗?
2 能用QPixmap吗?
#3 [ediwon 08-07 01:30]
convert转成xpm文件都是C格式的
你把你所提供的按XPM格式一下,和XPM格式样。就能直接在程序中用QPixmap(**.xpm);了
#4 [chris 08-07 08:46]
引用第3楼ediwon于2006-08-07 01:30发表的“”:
convert转成xpm文件都是C格式的
你把你所提供的按XPM格式一下,和XPM格式样。就能直接在程序中用QPixmap(**.xpm);了
转换成xpm文件的方法需要先保存文件吗?个人认为可能效率比较低,我希望原始数据每像素点是任意字节(1,2,4),而且数据一直动态改变.
#5 [realwerw 08-07 14:17]
参看qembed工具的使用文档,以及qembed_findData的源代码
给你我实现过的一段小代码:
QByteArray picdata = qembed_findData(picname);
QImage img;
img.setAlphaBuffer(TRUE);
if(picdata.data()!=NULL)
{
img.loadFromData((const unsigned char *)(picdata.data()), picdata.size(), "PNG");
}
希望对你有帮助