【问题标题】:Get color Index of (indexed) Bitmap using JavaScript使用 JavaScript 获取(索引)位图的颜色索引
【发布时间】:2015-06-12 13:01:33
【问题描述】:

我有一个位图文件类型 Format8bppIndexed。我需要通过 JavaScript 获取每个像素 (0-255) 的值,它对应于调色板的索引颜色。 我用getImageData试过了,但是返回的值不是颜色索引,而是绘制的像素颜色的RGBA值。

【问题讨论】:

    标签: javascript html web bitmap html5-canvas


    【解决方案1】:

    您需要使用相应的调色板定义。 Format8bppIndexed 位图(技术上位平面)中的位置将返回调色板的索引。

    Canvas 始终为 RGBA 格式,每个组件为 8 位。 24 位(如果包含 alpha 则为 32 位)不需要调色板,因为这些值与 RGB 缓冲区直接相关。

    要将 RGB 值转换为调色板索引,您需要调色板,然后您需要一种方法来找到从 RGB 到索引表示的值的最短距离(例如,对每个索引值使用 r*r+g*g+b*b, RGB 与调色板的 RGB 之间的距离差最短者胜)。

    【讨论】:

    • 只是一点点改变:abs(r-R)+abs(g-G)+abs(b-B),但它可以工作:)
    猜你喜欢
    • 2019-10-22
    • 2020-06-23
    • 2016-01-25
    • 2015-01-25
    • 2014-03-12
    • 2015-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多