我正在寻找一种可以在Compact Framework中使用不透明蒙板的方法吗?
答案 0 :(得分:2)
我认为.Net的CF版本根本不支持不透明度。也有一点道理。计算不透明度是一项非常昂贵的操作,不太适合动力不足的设备。
那就是说,这是一个possible workaround.
答案 1 :(得分:2)
您只需自行进行逐像素操作即可为位图滚动自己的不透明蒙版。执行此操作的超慢速方法是使用Bitmap的GetPixel
和SetPixel
方法,但更快的方法是使用LockBits方法。参见:
http://www.bobpowell.net/lockingbits.htm
根据您的具体操作,Windows Mobile设备具有令人惊讶的处理能力。使用LockBits迭代并处理320x240位图的76,800像素只需几毫秒(当然,取决于“处理”的复杂程度)。不透明度掩蔽(可能)只涉及比较两个像素值并可能计算第三个像素值,因此这没有问题。