phantomjs html格式转换工具使用简介

官方网站: https://phantomjs.org/

js文件生成(convert.js)

// html 转换为 bmp文件
var webPage = require('webpage');
var system = require('system');
var source = system.args[1];  //  xxx.html
var target = system.args[2];  // xxx.bmp
var page = webPage.create();
page.open(source, function start(status) {
  page.render(target);
  phantom.exit();
});

获取目标html中的内容

https://phantomjs.org/api/webpage/method/evaluate.html

使用page.evaluate()获取html中内容,并使用page.onConsoleMessage承接显示。

page.onConsoleMessage = function(msg) {
  console.log(msg);
}

page.open(source, function start(status) {
  page.evaluate(function(){
	  console.log(document.documentElement.innerHTML);
  })
  page.render(target);
  phantom.exit();
});

运行

CMD运行方式:

phantomjs convert.js xxx.html xxx.bmp

QT调用

QProcess processconvert(this);
QStringList listargs;
listargs << "convert.js" << "report.html" << "report.bmp";
// 重要!!! 设置文件路径目录
processconvert.setWorkingDirectory(strprogram);
processconvert.start("phantomjs.exe", listargs);
processconvert.waitForFinished();

problem:exe执行失败

分配文件权限

QFile::setPermissions(strfilepath, QFile::ReadOwner | QFile::WriteOwner | QFile::ExeOwner);

设置工作目录

processconvert.setWorkingDirectory(strprogram);

problem: 不支持普通流式布局

https://bleepcoder.com/cn/phantomjs/161082191/flex-flow-row-wrap-does-not-work

.div {
	display:flex; 
	flex-wrap:wrap; 
	flex-direction: row;
}

改为

.div {
    display: -webkit-flex;
    -webkit-flex-wrap: wrap;
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值