市场上有许多应用程序可以让您在触摸照片时为照片应用黑白等图像效果。实现这种功能的最佳方法是什么。
我的想法是:
首先创建具有所需效果的图像(例如黑白或棕褐色)并将其放置在原始图像下方。在 onTouch 方法中,我可以从原始图像中删除像素,因此我可以看到触摸区域的效果。
这是一种有效的方法吗,您怎么看?
最佳答案
如果您真的想要黑白,您只需将 (0,0,0) 分配给触摸区域内像素的 RGB 值(如果它们低于阈值(例如 255/2)或 (255,255,255))如果它们高于或等于此阈值。
但是,如果您所说的黑白是指灰度图像,则更好的解决方案是将 RGB 图像转换为 HSL color space .要获得足够的灰度级,只需将像素饱和度 (S) 设置为 0。这很好,因为您可以在触摸区域上产生一种渐变效果:将 S 设置为 0 以正好位于触摸点下方的像素,并让减少S 值相对于到触摸点的距离越小。
要获得棕褐色效果,我相信您还需要更改 de Hue (H) 值。
关于android - 颜色触摸效果的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9184997/