我正在一个项目中工作,我正在以 .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
不可靠并且给出错误的结果。
我需要一个跨平台的解决方案来正确地进行物理测量。