怎样解决显示图像时4字节对齐的有关问题(CImage类创建图像或利用GDI+处理图像)

怎样解决显示图像时4字节对齐的问题(CImage类创建图像或利用GDI+处理图像)
Windows中显示图像,存在4字节对齐问题,即自定义图像的宽度要满足被4整除。
但是,若有一个图像矩阵,其宽度不满足4字节对齐(比如,宽度为201),那么利用CImage创建图像后再显示,就会出现图像变形。

请问各位大侠:怎样解决这个问题呢?如果利用GDI+编程,如何实现?若是利用CImage类,又怎样解决这一问题呢?

求助啊~~~~~~~拜托啦~~~~~~~~不胜感激啊~~~~~~~~~!

------解决方案--------------------
图像四字节对齐 是指每行图像数据在内存中占用的字节要4字节对齐,
GDI+显示不用考虑这个问题,从显示层面上都是讲像素,GDI或GDI+的底层已经处理了这些问题
------解决方案--------------------
如果是32位位图,每个像素已经是4字节了,无论宽度是多少个像素,它肯定是4字节对齐的
------解决方案--------------------
#define WIDTHBYTES(i) ((i+31)/32*4)
问题是你的‘图像矩阵’产生的时候就应该对齐的,
产生后对齐:
1.产生一个对齐的空图像矩阵。
2.把你的没对齐的图像矩阵,逐行复制到刚产生的空图像矩阵中。
------解决方案--------------------
如果是自己显示(SetPixel),可以按原宽度显示。(就是说显示时也要考虑对齐问题)
如果调API,就不用管了。
------解决方案--------------------
不对齐的图像矩阵本身就是不合法的,所以原始字节数组的格式本身也不合法,必须经过转换环节,否则绘制函数当作对齐矩阵来显示,不走样才怪
------解决方案--------------------
探讨
那显示的时候 宽度和原来还一样么?
我想要实现的是:已有一个图像矩阵(假设宽度为201,BYTE类型),显示时还是宽度为201,BYTE类型,而不是显示时宽度变为204或者200