2 lghouses lghouses 于 2016.02.21 22:26 提问

【C++】 想用GDI+编辑内存中BYTE*的图片 5C

图片是BYTE*的形式保存在内存里,
请问怎样用GDI+编辑呢?
Graphics的构造函数中没有直接根据BYTE来构造的,最多是用Image*来构造对象,
但是Image对象不能直接根据BYTE*来构造,需要用IStream才可以。
但是又怎么将BYTE*搞成IStream!?
在网上找了半天都没有人能写一个完整的代码,请大神们打救!

4个回答

mengyin521
mengyin521   2016.02.21 23:22

直接把你的Byte* 写入到Istream中

a1004032158
a1004032158   2016.02.21 23:39
Trent1985
Trent1985   2016.02.22 09:48

解码image,找到byte数据区,单独处理!

VisualEleven
VisualEleven   Ds   Rxr 2016.02.22 15:27

CreateStreamOnHGlobal

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
GDI+ 在窗口显示内存图片
bool CTest::ShowImage(CWnd *pWnd, PBYTE pbImgData, int iImgDataLen) { if (pWnd == NULL || pbImgData == NULL || iImgDataLen < 1) { return false; } // 创建流 IStream *p
GDI+在内存中绘制,并保存为BMP、PNG、JPEG格式的图片关键代码
实现程序在内存中绘图 并保存为任意图片格式文件
GDI+ 获取图像内存像素指针
方法1:static Bitmap* FromHBITMAP(HBITMAP hbm, HPALETTE hpal);    方法2:static Bitmap* FromBITMAPINFO(  const BITMAPINFO* gdiBitmapInfo, VOID* gdiBitmapData );     方法1 关联的时候好像是copy了一份图像像素数据;    Bitma
GDI+实现图片格式转换(bmp、jpeg、gif、tiff、png) .
引言:通过GDI+我们可以很方便的对bmp、jpeg、gif、tiff、png格式的图片进行转换。 步骤: 1)    通过GdiplusStartup初始化GDI+,以便后续的GDI+函数可以成功调用。 2)    通过GetImageEncodersSize获取GDI+
使用GDI+在内存中转换图片类型
微软新推出的GDI+功能强大,本文仅对图片转换加以讨论,不足之处请大家指出,本人QQ:394777271。图片类型的转换支持:bmp、dib、png、gif、jpeg/jpg、tiff、emf等。以下是详细步骤。  首先,在StdAfx.h中静态调用diplus.lib,即由编译系统完成对DLL的加载,应用程序结束时卸载DLL的编码。如下:#ifndef ULONG_PTR#define
gdi+内存绘图
#include "gdi.h"//自己封装的GDI+库 ::Graphics::TBitmap * bmp1; __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { GdiInit(); bmp1 = new ::Graphics::TBitmap; bmp1->Width = 500;
使用GDI+进行图片处理时要注意的问题
使用GDI+进行图片处理时要注意的问题
GDI+在内存中绘图
为了防止画图闪烁,一般先将图像画
GDI+实现png图片加载
vc++加载透明png图片方法——GDI+和CImage两种 MFC项目添加GDIplus,一编译就报 VS平台不用再单独下载GDI+了 实现PNG图片加载的两种方法 一.png加载 1.定义 GdiplusStartupinput m_Gdiplus ULONG_PTR m_pGdiToken 2.初始化 BOOL CPNGDlg::OnInitDialog()
GDI+屏幕截图内存BMP转JPG,JPG再转IStream流,IStream流再转BYTE;
今天有点突破了