如何使用 Lua 将颜色代码从 OLE 转换为 RGB?

How can I convert colour codes from OLE to RGB using Lua?

在我工作的环境中,已实现的 Lua 函数会在我询问任何给定单词是什么颜色时为我提供 OLE 颜色代码,但另一方面,希望我能每当我想给任何给定的单词上色时,为它提供 RGB 颜色代码。

到目前为止,我一直在谷歌搜索 OLE 颜色代码,以便在 htmlcsscolor.com 中找到它们各自的页面(连同它们的 RGB 颜色代码),因为即使这个网站有它不允许的信息我通过 OLE 颜色代码搜索颜色。

是否有更快的方法(可能是一个函数或至少是关于如何转换的说明)从其 OLE 代码中检索颜色的 RGB 代码(如果可能,使用 Lua)?

OLE 颜色代码可以转换为 "RGB color code"( 这里是一个有歧义的词,因为Lua没有固有的概念 颜色)如下:

  • 红色分量为ole_color % 256
  • 绿色分量是(ole_color / 256) % 256
  • 蓝色分量是(ole_color / 65536) % 256

每个分量的范围从 0 到 255。

(请注意,移位和按位 AND 在这里会更好,但是 Lua 没有辅助库的帮助,不支持按位运算; 根据使用的程序 Lua,该程序可能会提供 用于按位运算的内置函数。)