首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将HTML源代码转换为读取流

将HTML源代码转换为读取流
EN

Stack Overflow用户
提问于 2017-10-25 05:42:28
回答 2查看 1.2K关注 0票数 0

最近,我正在开发一个涉及html模板的函数。

此函数所做的是生成一个动态模板,并将其转换为图像。根据我的理解和我到目前为止研发的情况,它需要是一个读取流,然后才能转换成一个图像文件。

到目前为止,我还是这样做的

代码语言:javascript
复制
fs.writeFile('sample.html', '<html>...</html>', function(err){
    fs.createReadStream('sample.html')
      .pipe(convert()) //function from html-convert npm package
      .pipe(fs.createWriteStream('out.png'))
});

除了创建一个新文件之外,还有其他方法来将其转换为图像吗?

对此的任何帮助都将不胜感激。谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-10-25 06:25:20

使用node-webshot https://github.com/brenden/node-webshot

代码语言:javascript
复制
var webshot = require('webshot');

webshot('<html><body>Hello World</body></html>', 'hello_world.png', {siteType:'html'}, function(err) {

});

更新

如果您想要将呈现的html截图作为base64,您可以这样做。

代码语言:javascript
复制
var renderStream = webshot('<html><body>Hello World</body></html>', {siteType:'html'});

renderStream.on('data', function(data) {
  console.log(data.toString('base64'));
});
票数 1
EN

Stack Overflow用户

发布于 2017-10-25 06:05:07

How to create streams from string in Node.Js?获得的答案

代码语言:javascript
复制
var Readable = require('stream').Readable;
var s = new Readable();
s.push('<html>...</html>');
s.push(null)
.pipe(convert()) //function from html-convert npm package
.pipe(fs.createWriteStream('out.png'))
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46924767

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档