如何更改Qt QPrinter的纸张大小?
我正在尝试用Qt打印PDF,它工作正常。然而,在某些情况下,我想改变纸张的大小后,我知道多少将真正打印 我正在尝试更改连接到我的如何更改Qt QPrinter的纸张大小?,qt,Qt,我正在尝试用Qt打印PDF,它工作正常。然而,在某些情况下,我想改变纸张的大小后,我知道多少将真正打印 我正在尝试更改连接到我的qPaint对象的设备的纸张大小,但这不会影响实际输出 以下是我在伪代码中所做的工作: printer = new QPrinter(...); printer->setPaperSize(...); /* eg. A4 */ painter = new QPainter(); painter->begin(printer); determine_pag
qPaint
对象的设备的纸张大小,但这不会影响实际输出
以下是我在伪代码中所做的工作:
printer = new QPrinter(...);
printer->setPaperSize(...); /* eg. A4 */
painter = new QPainter();
painter->begin(printer);
determine_page_size_by_trial_rendering(frame, printer, *painter);
printer->setPaperSize(....); /* eg. A5 */
real_rendering(frame, printer, *painter)
不幸的是,我似乎无法让这一切继续下去。我觉得
QPainter
对象以某种方式将页面大小保持在某个位置,而我无法重置它。好的-我已经找到了答案,信不信由你。我已经找了一天多了,但结果很简单——我只是摧毁了画家反对的东西,然后打开了一个新的:
painter->end();
painter = new QPainter(printer);
这就解决了