如何用GDI+转换位图成JPG数据到内存中

 我来答
优就业
2017-04-18 · TA获得超过406个赞
知道小有建树答主
回答量:493
采纳率:90%
帮助的人:467万
展开全部
//datecompress  图片的质量(只有在转换成jpg有效)   
  
//nSize         图片缓冲区的大小(要转的图片数据大小)  
  
//PicDate       这是一个指针,指向你的图片的  
  
unsigned int size=0;//得到图像大小  
BYTE* buffers;//存储图像数据的缓冲  
  
  
Bitmap *image = CreateBitmapFromMemory(PicDate,nSize);   //把你的图像数据加载入内存  
  
  
SaveBitmapToMemory(image,(void **)&buffers,&size,CodecIndex,datecompress); //转换成你要的类型,从buffers获取  
  
//说明:CodecIndex取值0-4,分别对应转换为jpg、bmp、gif、png、tiff格式,当为0ompr时,参数datecess有用,表示转换jpg的质量,取值0-100,数值越小,压缩比越大。
//这里是你的代码   

.....  

//这里是你的代码  
delete image;  
delete buffers;

把这些代码放入声明

Bitmap* CreateBitmapFromMemory(const void *buf, size_t size);   
void* SaveBitmapToMemory(Bitmap *image, void **outbuf, size_t *size, size_t CodecIndex, ULONG quality);

把这些代码加入到你的源文件最后

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式