Android 混合模式

发布于 2024-09-19 18:45:36 字数 99 浏览 10 评论 0原文

我正在寻找一种方法来向我的程序添加更高级的混合模式(我可以自己定义的模式)。您建议如何使用 Android 来解决这个问题?

单独设置像素太慢,不是一个可行的解决方案。

I am looking for a way to add more advanced blend modes to my program (ones that I could define myself). How would you suggest going about this with Android?

Setting pixels individually is too slow to be a viable solution.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

纸伞微斜 2024-09-26 18:45:47

Android 支持 OpenGL 的一个子集。如果您追求速度,这将是您应该采取的路线。

Android supports a subset of OpenGL. That would be the route to take if you're looking for speed.

云胡 2024-09-26 18:45:45

老实说,我不确定这是否受到支持。以 OpenGL 为例,混合模式由 OpenGL ES 规范定义,因此它们可以在硬件中实现。添加您自己的混合函数将违反规范,更不用说速度非常慢,因为它必须逐像素地进行操作。

我对画布不太确定,但出于类似的原因,我相信你也不能在那里做到这一点。

To be honest I'm not sure this is supported. Using OpenGL as an example, the blending modes are defined by the OpenGL ES Spec, so that they can potentially be implemented in hardware. Adding your own blend function would be breaking the spec, not to mention incredibly slow, because it would have to act pixel by pixel.

I'm not so sure about canvas, but I believe that you can't do it there either, for similar reasons.

最美的太阳 2024-09-26 18:45:44

即使没有 openGL,这也是可能的。 PorterDuff 应该是解决方案:

android.graphics.PorterDuffXfermode

android.graphics.PorterDuff

这是一个非常好的示例:

http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/Xfermodes.html

It's possible even without openGL. PorterDuff should be the solution:

android.graphics.PorterDuffXfermode

and

android.graphics.PorterDuff

Here is a very good example:

http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/Xfermodes.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文