WebpagePrinterTool 2.0
Print a web page skip the browser's print preview
载入中...
搜索中...
未找到
WebRender.h
浏览该文件的文档.
1#pragma once
3#include "DataPack.h"
4#include <QBuffer>
5#include <QObject>
6#include <QTimer>
7#include <QWebEngineView>
8#include <QtPrintSupport/QPrinter>
9#include <QtPrintSupport/QPrinterInfo>
10#include <qtmetamacros.h>
11#include <tuple>
12
13class WebRender : public QObject {
14 Q_OBJECT
15 public:
16 explicit WebRender(QObject* parent = nullptr);
17 // Q_SIGNALS:
25
26 QWebEngineView render_view;
27
28 private:
30 QList<QPrinter*> printers;
32 bool is_working{false};
33
34 std::tuple<PrinterDataPack*, CanExceptionCallback> current_work;
35 private slots:
39 void slotLoadFinishTorint(bool);
44
48
50
51 private:
58 void workFinish(bool is_success, const QString errmsg_or_pdfpath);
59
60 void toRenderPdf();
61};
定义 CanExceptionCallback.h:4
void work(PrinterDataPack *pack, CanExceptionCallback ra)
定义 WebRender.cpp:14
QList< QPrinter * > printers
定义 WebRender.h:30
void toRenderPdf()
定义 WebRender.cpp:44
void slotPrintRequestTimeOut()
SlotPrintRequestTimeOut
定义 WebRender.cpp:40
void slotJsPrintRequestToPrint()
Js window.print 调用打印页面
定义 WebRender.cpp:37
QTimer print_request_time
定义 WebRender.h:29
bool is_working
定义 WebRender.h:32
std::tuple< PrinterDataPack *, CanExceptionCallback > current_work
定义 WebRender.h:34
QTimer timeout_listen
定义 WebRender.h:31
void slotLoadFinishTorint(bool)
网页加载完毕打印
定义 WebRender.cpp:26
QWebEngineView render_view
定义 WebRender.h:26
WebRender(QObject *parent=nullptr)
定义 WebRender.cpp:7
void workFinish(bool is_success, const QString errmsg_or_pdfpath)
定义 WebRender.cpp:81
定义 DataPack.h:18