我已经使用该算法从Microsoft here:像素颜色计算255到0
INT iWidth = bitmap.GetWidth();
INT iHeight = bitmap.GetHeight();
Color color, colorTemp;
for(INT iRow = 0; iRow < iHeight; iRow++)
{
for(INT iColumn = 0; iColumn < iWidth; iColumn++)
{
bitmap.GetPixel(iColumn, iRow, &color);
colorTemp.SetValue(color.MakeARGB(
(BYTE)(255 * iColumn/iWidth),
color.GetRed(),
color.GetGreen(),
color.GetBlue()));
bitmap.SetPixel(iColumn, iRow, colorTemp);
}
}
创建梯度α混合。他们那张左到右,我需要一个从下往上走,所以我改变了自己的线
(BYTE)(255 * iColumn/iWidth)
到
(BYTE)(255 - ((iRow * 255)/iHeight))
这使得行0有阿尔法255,通过对具有最后一行字母8.
如何更改计算以使alpha从255变为0(而不是255到8)?