我正在一个以.eps格式保存绘图的项目中工作。
绘图本身位于小部件上,我需要将小部件的大小从像素转换为毫米,以便我可以正确设置输出图片的大小。
这是我正在使用的代码:
int widthmm = QApplication::desktop()->widthMM();
int heightmm = QApplication::desktop()->heightMM();
int widthpx = QApplication::desktop()->width();
int heightpx = QApplication::desktop()->height();
QSize epsPictureSize;
epsPictureSize.setWidth((picture.width*widthmm)/widthpx);
epsPictureSize.setHeight((picture.height*heightmm)/heightpx);
epsPrinter.setPaperSize(epsPictureSize,QPrinter::Millimeter);
问题是widthMM
和heightMM
不可靠并且会给出错误的结果。
我需要一个跨平台的解决方案来正确地进行物理测量。