微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PhantomJS:pipe道input

我正在尝试使用PhantomJS来呈现一个HTML页面到PDF。 我不想将文件写入磁盘,我有内存中的HTML,我想在内存中的PDF。

在这个问题上使用Pooria Azimi的出色答案,我可以从命名pipe道获得pdf。 当在另一端尝试相同的时候(用命名pipe道replaceinput文件),我最终得到一个空白的pdf。

这就是我现在正在做的(简化):

mkfifo in_pipe.html out_pipe.pdf ./phantomjs rasterize.js in_pipe.html out_pipe.pdf

然后在另一个terminal:

当试图使用grep,sed等时如何处理颜色代码

如果一个线程正在等待一个互斥量,信号是否被捕获?

对“int”口味的操作有疑问

libstdc ++。so.5:无法打开共享对象文件 – 但安装了库并且是最新的

如何debuggingTCP连接拒绝?

echo '<center>hey!</center>' > in_pipe.html cat out_pipe.pdf > out.pdf

文件out.pdf被创build,但是是空的。 我错过了什么吗?

Perl LibXML打印额外的“文本”标签

C基本的头部命令

在OpenStack上安装Apache Hadoop

shell脚本过滤du,并通过子文件夹中的文件内的string查找

C:OpenSSL RSA_private_decrypt()失败,出现“错误:0407A079:rsa例程:RSA_padding_check_PKCS1_OAEP:oaep解码错误

您可以直接在PhantomJS中直接执行您正在寻找的内容(这只是没有真正记录)。

var page = require('webpage').create(),fs = require('fs'); page.viewportSize = { width: 600,height: 600 }; page.paperSize = { format: 'Letter',orientation: 'portrait',margin: '1cm' }; page.content = fs.read('/dev/stdin'); window.setTimeout(function() { page.render('/dev/stdout',{ format: 'pdf' }); phantom.exit(); },1);

(如果您有需要加载的图像,可能需要增加超时等)

HTML是标准输入,PDF二进制输出标准输出。 你可以像这样测试它:

echo "<b>test</b>" | phantomjs makepdf.js > test.pdf && open test.pdf

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐