0

我正在尝试通过 nodejs 和 node-wkhtml 包使用 wkhtmltoimage 将一些 html 转换为 png。

我可以毫无问题地获得pdf。但是,当我尝试制作 png 而不是 pdf 时,png 只是颜色带,而不是应有的颜色。项目网站上报告的这个错误与我所看到的非常相似(除了我正在尝试编写一个 png 并且报告了一个 png 的错误)。

似乎只有在 Windows 上使用 stdout 时才会出现问题。有解决办法吗?有什么方法可以在不使用标准输出的情况下保存文件?

var fs = require('fs');
var wkhtml = require('node-wkhtml'),
    createWriteStream = require('fs').createWriteStream;

var MyClass = module.exports = function()
    {
    var png = wkhtml.spawn('png');
    png.stdout.pipe(createWriteStream('node_doc.png'));
    png.stdin.end('<h1>Hello World</h1>');
    }

new MyClass();
4

1 回答 1

1

我最终放弃了流和 node-wkhtml。我现在只是在编写一个临时 html 文件并使用 spawn 调用 wkhtmltoimage。必须制作临时文件并不理想,但它正在工作。

child_process.spawn( 'wkhtmltoimage', [ 'temp.html', 'output.png' ] );
于 2012-11-26T04:27:35.950 回答