是否有命令行工具返回像素的颜色值,完全基于其屏幕协调。
有这样的工具吗?
(另外:该工具不应要求任何用户操作。它是在脚本中的循环中运行。)
发布于 2010-12-08 10:07:32
您可以使用程序地堑。它将在十字线中转动鼠标指针,并返回选定颜色的HTML和RGB值。
sudo apt-get install grabc缺点:由于交叉头发不够薄,不可能做像素精确的选择。
您还可以创建python脚本,如下所示:
#!/usr/bin/python -W ignore::DeprecationWarning
import sys
import gtk
def get_pixel_rgb(x, y):
pixbuf = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB, False, 8, 1, 1)
pixbuf.get_from_drawable(gtk.gdk.get_default_root_window(),
gtk.gdk.colormap_get_system(),
x, y, 0, 0, 1, 1)
return pixbuf.get_pixels_array()[0][0]
print get_pixel_rgb(int(sys.argv[1]), int(sys.argv[2]))使其可执行,并在bash脚本中运行pixel_rgb="$(/path/to/script.py x y)"。当然,您需要按照需要的方式修改脚本,添加一些错误处理等等。
PS:我不太确定你能不能对DeprecationWarning做点什么,所以我在第一行就关掉了它。
发布于 2010-12-08 10:17:47
这有点排他性,但您可以使用xdotool (它允许您与鼠标交互)和grabc (从屏幕上单击的位置获取颜色)来实现这一点。
sudo apt-get install xdotool grabc首先运行grabc,但是后台运行它
grabc &然后使用xdotool执行mouseclick。
xdotool click 1单击将被grabc的光标和背景进程捕获,并输出颜色。
发布于 2013-10-07 15:00:37
我已经为这样的操作编写了一个python模块,称为Macropolo。但是,它所做的不仅仅是简单地在屏幕上获得像素的颜色。
这是我分享过的论坛帖子:http://ubuntuforums.org/showthread.php?t=2155281
该模块具有许多功能,允许您例如计算屏幕区域中具有特定颜色的像素数量,搜索区域中的像素颜色(S),等待像素或屏幕区域具有特定颜色,等待像素颜色,并在等待时运行其他功能(例如,移动光标以在等待特定颜色时不让屏幕关闭)。
但是,就像我说的,它做了更多的事情,比如模拟鼠标点击和键盘,屏幕区域的截图等等。
https://askubuntu.com/questions/16620
复制相似问题