Qt,打印保存不同输出格式元素的相对位置

Qt,打印保存不同输出格式元素的相对位置,qt,printing,Qt,Printing,我在以不同的输出格式打印文档时遇到一些问题。我必须保存(pdf格式)并用普通打印机打印同一文档。这个文档有一个网格,我用svg格式绘制了它,还有一些字段和图像 制作本文件的功能相同,只是说明如下: printer->setOutputFormat(QPrinter::NativeFormat); 代码非常简单: QSvgRenderer *r; r = new QSvgRenderer(QString("PrintModelWithoutNote.svg")); QPrinter *p

我在以不同的输出格式打印文档时遇到一些问题。我必须保存(pdf格式)并用普通打印机打印同一文档。这个文档有一个网格,我用svg格式绘制了它,还有一些字段和图像

制作本文件的功能相同,只是说明如下:

printer->setOutputFormat(QPrinter::NativeFormat);
代码非常简单:

QSvgRenderer *r;
r = new QSvgRenderer(QString("PrintModelWithoutNote.svg"));

QPrinter *printer = new QPrinter();
QPainter *paint = new QPainter();

if(pdf){
    printer->setOutputFormat(QPrinter::PdfFormat);
    printer->setOutputFileName("pdf_file.pdf");
}else{
    printer->setOutputFormat(QPrinter::NativeFormat);
}

paint->begin(printer);
r->render(paint);

paint->drawText(QPointF(10, 10), "Test1");
paint->drawText(QPointF(50, 50), "Test2");
paint->end();
问题是,我决定了pdf格式中文本的位置,以便与svg中的网格对齐。当我以本机格式打印时,文本将与网格失去对齐

我做了几个删除或添加页边距的测试,但没有成功。我唯一感兴趣的是保持对齐。有人对我有什么建议吗

我希望我已经很好地解释了我的问题。提前谢谢