如何在Java中将getRGB(x,y)整数像素转换为Color(r,g,b,a)?

2023-12-21

我有从中获得的整数像素getRGB(x,y),但我不知道如何将其转换为 RGBA 格式。例如,-16726016应该Color(0,200,0,255)。有小费吗?


如果我猜对了,你得到的是一个无符号整数的形式0xAARRGGBB, so

int b = (argb)&0xFF;
int g = (argb>>8)&0xFF;
int r = (argb>>16)&0xFF;
int a = (argb>>24)&0xFF;

将提取颜色成分。然而,快速浏览一下docs http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Color.html#Color%28int%29说你可以这样做

Color c = new Color(argb);

or

Color c = new Color(argb, true);

如果您还想要颜色中的 alpha 分量。

UPDATE

红色和蓝色分量在原始答案中颠倒了,所以正确的答案是:

int r = (argb>>16)&0xFF;
int g = (argb>>8)&0xFF;
int b = (argb>>0)&0xFF;

也在第一段代码中进行了更新

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Java中将getRGB(x,y)整数像素转换为Color(r,g,b,a)? 的相关文章

随机推荐

  • 如何更改 group_vars 和 host_vars 的路径?

    我们可以通过修改来改变角色的路径roles path in ansible cfg 但该文档似乎没有提及任何有关更改路径的内容group vars and host vars 我怎样才能改变这些路径 我将把与ansible相关的文件与rai
  • 在可移动和不可复制的类上使用移动和交换习惯是否有意义

    如果我有这样的课程 class Foo public Foo Foo Foo rhs operator Foo rhs swap this rhs void swap Foo rhs private Foo const Foo snip s
  • Dropbox oauth 窗口无法正常工作

    我正在将我的应用程序移植到 Electron 我惊讶地发现 Dropbox 身份验证在此环境中不起作用 不过它在 Chrome 中确实有效 登录按钮保持禁用状态 并且标签出现在输入上方 控制台中显示以下消息 Content Security
  • 尝试将应用程序提交到应用程序商店时 Xcode 崩溃[重复]

    这个问题在这里已经有答案了 我正在尝试提交一个应用程序 我将其存档 然后尝试提交它 结果崩溃了 我查找了此问题的潜在解决方案 他们说只需转到首选项 gt 帐户 gt 并更新以确保您已同意所有新条款 所以我这样做并再次尝试 现在它仍然崩溃 我
  • Ruby:一类的子类之后的[数字]的语法名称[重复]

    这个问题在这里已经有答案了 我正在通过示例学习 Ruby on Rails 我在迁移文件夹中看到这里是一个示例代码 class RemoveOrderListNumberAndStateFromOrderLists lt ActiveRec
  • 渲染许多连接的四开文档

    我一直在尝试新的quarto https quarto org Rstudio 的工具 似乎我无法做旧版本中可以做的事情R笔记本 or R Markdown备择方案 我想通过几个四开文档 qmd 组织我的工作流程 并且我想生成 html 文
  • 调用 twig 扩展时出现未知函数错误

    我正在寻找创建一个 twig 扩展 但 Symfony 一直告诉我我的功能未知 这是我的课程
  • Managed Oracle ODP.NET 驱动程序是否使用网络加密?

    我最近读到 Oracle 支持 Oracle 客户端和服务器之间的网络加密 我假设 如果服务器支持此功能 客户端就可以在各种 Oracle 数据访问提供程序库使用的完整 Oracle 客户端驱动程序中完成连接 但是 我的应用程序使用来自 O
  • 如何在 SQL Server 中存储和检索 varbinary(max) 列

    我正在开发一个应用程序 我想将用户的指纹存储到数据库中 然后将其与从设备中获取的指纹进行比较 我在转换时遇到了某些问题varbinary max 列返回一个字节 我尝试过使用GetSqlBinary功能但它给了我indexoutofrang
  • 自动选择 WPF TextBox 中焦点上的所有文本

    如何自动选择 WPF 文本框中焦点上的所有文本 乔纳森 通过向应用程序添加全局事件处理程序 您可以非常轻松地做到这一点 http madprops org blog wpf textbox selectall on focus http m
  • 如何使用 Promise 等待 observable 的每个值

    假设我有这个可观察的 const obs new Observable observer gt observer next 0 25 observer next 0 75 observer next new ArrayBuffer 100
  • 用户体验问题:“严重删除”或“垃圾”更好

    我正在开发一个应用程序 允许用户管理一些单独的数据点 我的用户想要做的事情之一是 删除 但这意味着什么 对于 Web 应用程序来说 向用户提供严重删除或使用 垃圾 系统的选项是否更好 在 严重删除 下 很想知道是否有更好的名称 您单击 删除
  • 使用空初始化器列表直接初始化

    struct X X std cout lt lt default ctor lt lt std endl int main X 这打印出来 default ctor 这是有道理的 因为空大括号值初始化了对象 我认为 然而 struct X
  • 即使视口元标记中的分辨率宽度为 1536,ipad 3 设备宽度是否始终为 768?

    我正在尝试了解 ios 设备的视口元标记 我创建了一个测试页面 在其中插入了一张 862 像素宽的图像 所以我的视口元标记为 然而在ipad 3上 分辨率宽度为1536像素 并将视口设置为与ipad 3相同的可见区域大小 862px图像被放
  • Intellij 工作表和其中定义的类

    我正在学习 Coursera 的 Scala 函数式编程课程 并发现工作表 repl 出现了奇怪的行为 在课程中 包含以下代码的工作表应在右侧给出以下结果 object rationals val x new Rational 1 2 gt
  • 获取对象为 null 的对象的类型?

    以下代码可以编译 但为什么会出现运行时异常 String b null System out println b getClass 我得到的错误是 java lang NullPointerException 即使对象设置为 null 如何
  • Cocos2d播放2个不同的背景音乐文件或循环播放效果

    我需要为场景提供背景音乐 为角色提供背景音乐 但是当角色做出某些动作时我必须停止它 对于这个问题我必须选择 同时播放2个背景音乐文件 并停止与角色相关的背景音乐文件 循环播放音效 这 2 种中哪一种是可能且推荐的 Regards 你说你正在
  • 非交互式 bash 中的别名[重复]

    这个问题在这里已经有答案了 我想让别名在非交互式 bash 中工作 我运行以下命令 bash c alias toto ls shopt s expand aliases alias toto ls toto 我得到以下信息 bash to
  • SeekBar - 使用上面的 TextView 显示进度

    我正在尝试 肯定很简单 任务 让 TextView 跟随进度条上的拇指并在 TextView 中显示进度 问题是 对于小于最大值一半的进度值 TextView 会向拇指左侧漂移 越来越远离正确位置 反之亦然 当进度值大于最大值一半时 Tex
  • 如何在Java中将getRGB(x,y)整数像素转换为Color(r,g,b,a)?

    我有从中获得的整数像素getRGB x y 但我不知道如何将其转换为 RGBA 格式 例如 16726016应该Color 0 200 0 255 有小费吗 如果我猜对了 你得到的是一个无符号整数的形式0xAARRGGBB so int b