市场上有许多应用程序允许您在触摸照片时将照片效果(如黑白)应用于照片。实现此类功能的最佳方法是什么?
我的想法如下:
首先创建具有所需效果的图像(例如黑色和白色或棕褐色)并将其放在原始图像下。在onTouch方法中,我可以从原始图像中擦除像素,因此我可以在触摸区域中看到效果。
这是一种有效的方法,你怎么看?
答案 0 :(得分:1)
如果您真的想要黑白,只需将(0,0,0)分配给触摸区域内像素的RGB值(如果它们低于阈值(例如255/2)或(255,255,255))如果它们高于或等于这个阈值。
但是,如果黑色和白色表示灰度图像,则更好的解决方案是将RGB图像转换为HSL color space。要获得足够的灰度,只需将像素饱和度(S)设置为0.这很好,因为您可以对触摸的区域进行一种渐变效果:将S设置为0到恰好低于触摸点的像素,然后减小S值相对于到触摸点的距离较低。
为了获得棕褐色效果,我相信您还需要更改de Hue(H)值。