如何从Gdipls:Bitmap快速复制数据
How to quickly copy data from Gdiplus::Bitmap
我有一个Gdiplus::位图对象。这是一张已知宽度和高度的灰度图像。我想做的是将它的内容加载到2D阵列中,就像一样
char image[width][height]
我需要Gdiplus::Bitmap(在Winapi窗口中渲染)和char数组(执行大量图像过滤并相对快速地完成)。我考虑了一些选择:
- 遍历Gdiplus::位图,逐像素加载数据
- 使用新的Gdipls:Bitmap(文件名)加载Gdiplus::Bitmap,但使用其他库将图像从同一文件加载到我的数组
- 根本不使用Gdiplus,而是使用其他东西来渲染和执行图像过滤。不幸的是,我不知道是否有比Gdiplus更好的方法在Winapi窗口中渲染图像
最好的方法是什么?
如果您使用例如此构造函数或此构造函数,那么您仍然可以控制原始像素数据,并且可以随意更改。
更改像素数据后,只需使用位图重新绘制即可。
相关文章:
- 在 C++ AMP 数组中复制数据多少次?
- 字符串是否在其构造函数中复制数据
- 在不复制数据的情况下,将double数组转换为只有double成员的structs数组
- 有没有一种方法可以在不复制数据的情况下从string_view创建字符串流
- 如何在不复制数据的情况下将 cv::Mat 转换为 2d 标准::矢量
- C++ 在节点内存储对数据对象的引用,而不复制数据
- 是否可以在不分配内存或复制数据的情况下构造对象?
- 如何在不复制数据的情况下在平面数组和多维数组之间进行转换?
- C 2D char阵列有时会在随机位置复制数据
- 在不复制数据的情况下更改 opencv mat 中的列顺序
- 有没有办法将 EGL 绘制到 /dev/fb1 而不是 /dev/fb0,而无需在树莓派上复制数据
- 使用C 和目标C从原始图像中复制数据
- 给定 myvector.start() 和 myvector.end(),我想在不复制数据的情况下创建 myvector
- 复制数据时出现奇怪错误
- 如何在 C/C++ 中从数组末尾开始复制数据
- glTexImage2D 复制数据或仅指定数据
- 如何在C++中从void指针复制数据
- 在不复制数据的情况下将OpenCV Mat发送到MATLAB工作区的方法
- 如何使用 GPU-DMA 从 GPU-CUDA 代码来复制数据
- 在矢量到矢量中复制数据<float> <Mat> (Opencv/C++)