46

我正在尝试计算一些RGB colors (0 - 255)0进行1缩放。有谁知道在线转换器或它存在数学公式?

假设我想将 125 RGB(0 到 255 比例)转换为 0 到 1 比例。

4

4 回答 4

89

这只是将您的 RGB 值除以x255 的情况:

如果x = 95那么你的价值是95/255 = 0.373(到 3 dp)

于 2012-06-01T11:02:09.810 回答
11
a = x / 255

或者

x = a * 255

xRGB 值在哪里,a是您想要的结果。

于 2012-06-01T11:00:35.390 回答
1

如果您想继续使用 0-255 可以为此创建一个函数,如下例所示。

function setFillColor2(...)
   local object,r,b,g=...
   object:setFillColor( r/255, b/255,g/255)
end

circle1 = display.newCircle(150,250, 50 ) 
setFillColor2(circle1,23,255,12)
于 2014-03-08T11:39:41.343 回答
1

最简单的方法是除以 0-1 的 255 或 0 的 256 - 略小于 1。后者有时具有优势。当然,您需要以定点或浮点数进行除法,而不是整数运算。

然而事实上,人类对 0-255 的 rgb 通道值的响应不是线性的,设备的响应也不是。通常您需要进行伽马校正。这一切都非常迅速地涉及,并且对于低端图形通常并不重要。然而,对于高端图形,您通常希望完全脱离 rgb 色彩空间,然后您需要非线性转换函数来最终将 rgb 像素刷新到最终图像。

于 2017-02-24T15:37:17.990 回答