使用JavaScript获取(索引)位图的颜色索引
我有一个位图文件类型Format8Bppined。我需要通过JavaScript获得每个像素的值(0-255),它对应于调色板的索引颜色。使用JavaScript获取(索引)位图的颜色索引,javascript,html,web,bitmap,html5-canvas,Javascript,Html,Web,Bitmap,Html5 Canvas,我有一个位图文件类型Format8Bppined。我需要通过JavaScript获得每个像素的值(0-255),它对应于调色板的索引颜色。 我尝试使用getImageData,但返回的值不是颜色索引,而是绘制像素颜色的RGBA值。您需要使用相应的调色板定义。Format8Bppined位图(技术上为位平面)中的位置将返回调色板的索引 画布始终为RGBA格式,每个组件为8位。24位(如果包括alpha,则为32位)不需要调色板,因为值与RGB缓冲区直接相关 要将RGB值转换为调色板索引,您需要调色
我尝试使用getImageData,但返回的值不是颜色索引,而是绘制像素颜色的RGBA值。您需要使用相应的调色板定义。Format8Bppined位图(技术上为位平面)中的位置将返回调色板的索引 画布始终为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),但它可以工作:)