有人告诉我为什么我们在过滤器中编写这个0xff000000吗?

用户名

这是我的GrayScale过滤器代码,想知道这一点

class GrayScale extends RGBImageFilter {
  @Override
    public int filterRGB(int x, int y, int rgb) {
    int a = rgb & 0xff000000;
    int r = (rgb >> 16) & 0xff;
    int g = (rgb >> 8) & 0xff;
    int b = rgb & 0xff;
    rgb = (r * 77 + g * 151 + b * 28) >> 8; 
    return a | (rgb << 16) | (rgb << 8) | rgb;
    }
}
骨灰999

您输入的格式是0xAARRGGBB这里AA是alpha(透明度),RR是红色的,GG是绿色的,并且BB是蓝色成分。这是十六进制,因此值的范围是00到FF(255)。

您的问题是关于alpha值的提取。这行:

int a = rgb & 0xFF000000

如果您考虑的值0xFFFFFFFF(白色),AND将返回原始颜色和遮罩中设置的所有位;因此您将获得0xFF或255的值(正确)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

有人能告诉我为什么这个程序总是崩溃吗?

有人能告诉我为什么这个简单的 PHP 循环不起作用吗?

有人能告诉我这个javascript有什么问题吗?

有人可以告诉我这个mips问题是什么意思吗?

有人可以告诉我这个错误是什么意思吗?

有人可以告诉我为什么我的actionListener for循环不起作用吗?

我是React的新手,有人可以告诉我为什么会这样吗?

有人可以告诉我为什么我的if / else陈述不起作用吗?

有人可以告诉我这个sql代码中的错误吗?

有人可以告诉我为什么我不理解此示例中的范围吗?

TextGeometry没有显示,有人可以告诉我为什么吗?

我不知道为什么我得到这个“文字与格式字符串不匹配”,有人可以告诉我吗?

有人可以告诉我为什么a:hover不起作用吗?

有人能告诉我为什么这不起作用吗?

有人能告诉我 Eclipse 调试中的错误是什么意思吗?

我正在努力理解 Dagger。有人能告诉我这个 Kodein 实现在 Dagger 中的样子吗?

有人可以告诉我为什么我按cam按钮时我的应用程序崩溃吗

有人能告诉我为什么这个 JSfiddle 在播放完后会重复第一首歌吗?

有人能告诉我为什么我的“缩略图”不是我在代码链接中尝试的行格式吗?

有人可以告诉我为什么这段代码不叫我那个函数吗?

为什么我的while循环不起作用?有人可以告诉我错误消息的工作原理吗?

有人想告诉我为什么使用pygame Vector时我的pygame代码滞后吗?

有人能告诉我为什么我在执行后得到一个“空”输出吗?

我正在尝试使用此代码查找二叉树的高度,但是它始终返回0,有人可以告诉我为什么吗?

有人能告诉我如何摆脱这个错误吗

有人可以告诉我这个正则表达式吗?

有人能告诉我这个 Python 登录屏幕哪里出了问题吗?

python中的变量不起作用,有人可以告诉我我的代码有什么问题吗?

有人可以告诉我这个错误是什么意思吗?另外,如果有人能够解决它,那将是很棒的