2017-03-13 14 views
0

我的应用程序基于qt quick.So小部件不受支持。我想将html文件转换为pdf,里面有JavaScript。 的HTML如下:在QT中,如何将HTML转换为内部调用的pdf格式为pdf文件

<!DOCTYPE html> 
<head> 
<meta charset="utf-8"> 
<title>ECharts</title> 
</head> 
<body>  
<div id="main" style="width:600px;height:400px;"></div> 
**<script src="echarts.js"></script>** 
<script type="text/javascript"> 

    var myChart = echarts.init(document.getElementById('main')); 

有没有什么办法来转换这个HTML文件中使用JavaScript生效至PDF?

回答

0

您需要一个Web渲染引擎来消耗输入并相应地执行脚本,然后让它打印结果。

例如使用QWebEnginePage和其中一个printToPdf()功能。

+0

嗨,是否有可能在qt快速应用下使用这个?我们的项目就是基于此。 – LL2012

+0

取决于您是否要显示HTML内容并打印它。如果你想显示它,请在'QtQuick'中使用'WebEngineView'元素。 QWebEnginePage类没有或者不需要任何UI,所以如果你只关心解释和打印HTML内容,你仍然可以在应用程序的C++部分中使用它 –

0

看到这个堆栈的问题:QWebEngine: print a page?

你会发现通过使用基于铬系或新的发动机较老的WebKit打印网页视图的正确方法。这两个选项完全兼容Qt Quick。

您也可以使用QTextView通过加载HTML内部来打印数据。