Qt与symbian特定格式类对象的转换
来源:互联网 发布:同步轮选型软件 编辑:程序博客网 时间:2024/05/29 18:43
1:FbsBitmap转为QImage
应用场景:当使用摄像头时:拍摄的图像都是FBsBitmap,而如果要想让其显示在QWidget上,则需要首先将其转换成QImage格式。
参数说明:aBitmap是传入参数,aImage是传出参数,当动态拍摄(相当于摄像)时:aStep为4; 当capture拍摄静态图片时:aStep为3.
void FbsBitmapToQImage(CFbsBitmap* aBitmap,QImage* aImage,TInt aStep) {
int aHeight=aBitmap->SizeInPixels().iHeight;
int aWidth=aBitmap->SizeInPixels().iWidth; aBitmap->
BeginDataAccess();
unsigned char* ptrBitmapPixel=(unsigned char*)(aBitmap->DataAddress()); //0xBBGGRRff
unsigned char* ptrImagePixel=aImage->scanLine(0); //0xBBGGRRff;
for(int i=0;i<aHeight;i++) {
for(int j=0;j<aWidth;j++) { *(ptrImagePixel+2)=
char((int)(*(ptrBitmapPixel+2))/tmp); //Red
*(ptrImagePixel+1)=
char((int)(*(ptrBitmapPixel+1))/tmp); //Green
*(ptrImagePixel+0)=
char((int)(*(ptrBitmapPixel+0))/tmp); //Blue
ptrBitmapPixel+=aStep; ptrImagePixel+=4; } } aBitmap->
EndDataAccess();
}
2:QString转为TPtr
void
QStringToTPtr(QString* aQtMsg,TPtr* aS60Msg)
{
aS60Msg->
Delete(0,aS60Msg->Length());
for(int i=0;i<aQtMsg->length();i++)
aS60Msg->
Append((*aQtMsg)[i].unicode());
}
3:TDesC转为QString
char* ptrDes=(char*)aDes->Ptr();
for(int i=0;i<aDes->Length();i++)
{
*aChar=*ptrDes;
aChar++;
ptrDes+=2;
}
*aChar=
'/0';
}
还有一些其他的,暂时没想全,以后再补充。
- Qt与symbian特定格式类对象的转换
- Qt与symbian特定格式类对象的转换(转)
- 字符串转换成特定的时间格式
- 从Symbian C++到Qt编程的注意事项(1)--CleanupStack与对象树
- json格式字符串与json对象相互转换的函数
- java对象与xml格式之间的转换
- java对象与xml格式字符串的转换
- Json格式与java对象之间的转换
- 特定时间操作的一个经历(时间格式转换)
- sqlserver将时间转换为特定的格式(字符串)
- Qt中一些常用的格式转换
- QT 常见格式转换
- 常见的数字证书格式与格式转换
- 将List对象列表转换成JSON格式的类
- java对象类、XML格式的相互转换
- Java时间--毫秒转换成特定格式
- 针对特定对象的内存管理类
- 删除特定的对象
- 利用PLSQL Developer 给oracle 10g 创建表空间
- SQL获取插入后数据ID的三种方式比较
- C# Winform 绘图展示有点像windows自带的画图工具
- 嵌入式LINUX应用程序开发详解
- 2010世界杯开始了
- Qt与symbian特定格式类对象的转换
- Can't find bundle for base name configure, locale zh_CN
- 谷歌中国六月过三关 研发团队已失七将
- select * 与select acol,bcol.. 执行速度比较
- 【c# 】使用 StringBuilder
- InputStream 、 InputStreamReader 、 BufferedReader
- BeginPaint和GetDC有什么区别?
- Google App Engine 资料
- 国内黑客组织