java - Java获取Icon中像素的RGB值
问题描述
我正在编写一个 MouseListener 单击事件,当我单击 JLabel 时,它会给我单击的像素的 RGB 值。
我可以用
mybufferedImage.getRGB(e.getPoint().x, e.getPoint().y
但是,我无法将图标检索为 BufferedImage。
我知道我可以检索图标然后转换为 BufferedImage,但我想知道是否有一种等效的方法来获取图标的 RGB 值而无需转换为 BufferedImage?我主要关心的是性能,每次检索 RGB 值时,我都不想转换整个图像,尤其是在处理非常大的图像时。
谢谢
解决方案
您可以使用该Robot.getPixelColor(...)
方法获取屏幕上给定点的像素颜色。
您首先需要使用该SwingUtilities.convertPointToScreen(...)
方法将鼠标点转换为屏幕上的一个点。
我主要关心的是性能,
不是真正的问题。我的意思是你可以多快点击鼠标?
推荐阅读
- javascript - 此链接在脚本标签内表示什么?
- forms - 如何创建一个带有 url 输入的表单,该表单重定向到 pagespeed score/insights 或使用 ajax 显示它
- django - 关注/关注系统 Django - 如何检查用户是否已经关注
- gstreamer - 如何配置 gstreamer 多队列以确保我们从每个源中抓取相同数量的帧
- php - PHP安装:错误:无法切换模块的启用流
- python - 尝试匹配多个参数化测试时,pytest -k 表达式失败
- security - 原始代码的 SAST 更好或编译代码
- java - 是否有一种简化的方法可以从 rust 调用 java 函数?
- laravel - 在流明中获取未定义的函数 public_path() 错误
- javascript - 如何使用 express.js 将自定义标头添加到 socket.io 的响应中?