我正在尝试使用 Qt 打印 PDF,它工作正常。但是,在某些情况下,我想在知道实际打印多少之后更改纸张的大小。
我正在尝试更改连接到我的QPainter
对象的设备的纸张大小,但它不会影响实际输出。
这是我在伪代码中所做的:
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
对象以某种方式将页面大小保持在某处,而我无法重置它。