gpt4 book ai didi

javascript - Node.js 中用于缓冲图像的 RGB 数组

转载 作者:行者123 更新时间:2023-12-03 07:41:33 24 4
gpt4 key购买 nike

我有一个由 RGB 对象(像素颜色)组成的数组。示例:

[
{r: 40, g: 143, b: 54},
{r: 86, g: 193, b: 87},
...
]

我有图像分辨率。示例:

{
width: 400,
height: 300
}

如何将此数组转换为 Node.js 中的 Buffer 以在浏览器中显示?

最佳答案

  1. 将 RGB 对象数组转换为字节数组。

    function RGBtoArr(rgb)
    {
    return [rgb.r, rgb.g, rgb.b];
    }
    function flattenArray(arr)
    {
    return [].concat.apply([], arr);
    }
    var buf = new Buffer(flattenArray(arr.map(RGBtoArr)))
  2. 将结果字节编码为浏览器支持的图像格式。

    var png = new Png(buf, width, height);
    png.encode();
  3. 将生成的图像发送给用户(以下任意一种)。
    • 将 base64 格式的图像嵌入到 HTML 中。
    • 在光盘上另存为 png 并获取要使用的 URL。
    • 作为对特定网址的 HTTP 请求的动态响应发送。

关于javascript - Node.js 中用于缓冲图像的 RGB 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35397210/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com