如何显示以 RGB 十六进制值序列表示的颜色?

问题描述 投票:0回答:1

我有一系列 6 位十六进制值,表示 RGB 格式的颜色,例如FF0000 表示红色,FFFF00 表示黄色。值之间用空格分隔。

我正在某个终端的 shell 会话中,我想通过以下三种方式之一查看所表示的颜色:

  1. 在终端本身
  2. 在具有不同颜色的连续区域的图像文件(某种常见格式)中
  3. 在 X 窗口中 - 假设我的终端已定义 DISPLAY 并且正在运行一个允许访问的 X 服务器

三者中任何一个都是合法的;重点是我想在不编写一些复杂的定制程序的情况下做到这一点,而是用一些简单的东西,最好是一句台词。我可以这样做吗?

备注:

  • 假设使用现代 Linux 系统,但尽量避免使用过于奇特/深奥的工具。
  • 渲染颜色的三个选项中的任何一个都可以;如果您的解决方案支持多个选项,那就更好了。
  • 事实上,我还有一些标题零,可能还有 0x,例如0x00FF0000 。您可以选择忽略或不忽略。
shell command-line colors image-generation
1个回答
0
投票

由于您没有分享输入数据的一个像样的示例,并且假设您拥有 129k 的声誉,您可以编写 shell 脚本,我的想法是使用 ImageMagick 制作一个可以用

xdg-open
显示的 PNG ,或
feh
或 MS Paint。

这是一个脚本,它制作一个 PNG,其中红色、绿色和蓝色块各为 30x30 像素,全部排列在页面上的一行中。另存为

script.mgk
:

-size 30x30
xc:#ff0000
xc:#00FF00
xc:#0000FF
+append
-write result.png

现在你可以运行它:

magick-script script.mgk

它将创建这个

result.png

enter image description here

我用小写和大写十六进制写了它,所以你可以看到两者都有效。它会写入一个名为

result.png
的输出文件 - 相反,您可以通过将最后一行更改为:
stdout

上写入 PNG
-write PNG:-

然后你可以将其通过管道传输到

feh
xdg-open
:

magick-script script.mgk | feh
© www.soinside.com 2019 - 2024. All rights reserved.