GD 图像库:真彩色图像的颜色分量参数范围

发布于 2024-07-29 07:44:31 字数 240 浏览 3 评论 0原文

我正在尝试使用 GD(特别是 bgd.dll)从 Windows 下的 C++ 程序输出 TrueColor 图像。 API(或至少是示例)似乎表明 gdResolveColor 的整数 RGB 参数的范围跨越值 0-255。 它是否正确?

我尝试过更高的值并得到了奇怪的结果,但这很可能是由于我自己缺乏理解。

I'm trying to output a TrueColor image using GD (specifically bgd.dll) from a C++ program under windows. The API (or at least the examples) seem to suggest that the range of the integer RGB arguments for gdResolveColor spans the values 0-255. Is this correct?

I've experimented with higher values and gotten strange results but this could well be to due my own lack of understanding.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

南七夏 2024-08-05 07:44:31

那是对的。 真彩色对每种颜色分量(红色、绿色和蓝色)使用一个字节。 字节的范围是 0 到 255,因此 GD 文档中指示了该范围。 因此,可以使用这 3 个字节(24 位)指定 16,777,216(2^24 或 256^3)种不同的颜色。

我不确定 GD 如何处理无效输入(即超过 255 的颜色分量)。 它可能会屏蔽输入,最终您会得到提交的值模 255。

That is correct. True color uses one byte for each color component (red, green and blue). The range of an byte is 0 to 255, hence the range indicated in the GD documentation. So, 16,777,216 (2^24 or 256^3) different colors can be specified using these 3 bytes (24-bits).

I'm not sure how GD handles invalid inputs (i.e. a color component over 255). It likely masks the input and you end up with the your submitted value modulo 255.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文