如何将灰度图像矩阵转换为 Node.js 中的图像
How to convert grayscale image matrix to image in Node.js
我有一个表示 8 位灰度图像的值矩阵(值范围从 0 到 255)。我想在网络上显示此图像。我该怎么做?图像来自C程序,是否需要在C程序中转换图像?
感谢 stdob 的建议,我最终使用 pngjs 库来完成这项工作 https://www.npmjs.com/package/pngjs。这是我使用的代码:
var fs = require('fs'),
PNG = require('pngjs').PNG;
var png = new PNG({
width: 100,
height: 100,
filterType: -1
});
for (var y = 0; y < png.height; y++) {
for (var x = 0; x < png.width; x++) {
var idx = (png.width * y + x) << 2;
png.data[idx ] = 255;
png.data[idx+1] = 218;
png.data[idx+2] = 185;
png.data[idx+3] = 255;
}
}
png.pack().pipe(fs.createWriteStream('newOut.png'));
我有一个表示 8 位灰度图像的值矩阵(值范围从 0 到 255)。我想在网络上显示此图像。我该怎么做?图像来自C程序,是否需要在C程序中转换图像?
感谢 stdob 的建议,我最终使用 pngjs 库来完成这项工作 https://www.npmjs.com/package/pngjs。这是我使用的代码:
var fs = require('fs'),
PNG = require('pngjs').PNG;
var png = new PNG({
width: 100,
height: 100,
filterType: -1
});
for (var y = 0; y < png.height; y++) {
for (var x = 0; x < png.width; x++) {
var idx = (png.width * y + x) << 2;
png.data[idx ] = 255;
png.data[idx+1] = 218;
png.data[idx+2] = 185;
png.data[idx+3] = 255;
}
}
png.pack().pipe(fs.createWriteStream('newOut.png'));