• 6258阅读
  • 1回复

求助!!关于QPrinter::SetResolution()函数的问题~~~~~ [复制链接]

上一主题 下一主题
离线176107519
 

只看楼主 倒序阅读 楼主  发表于: 2009-03-02
我有一段这样的代码:
QPrinter* pPrinter = new QPrinter(QPrinter::HighResolution);
QPrintDialog print_dialog(pPrinter ,this);
if (print_dialog.exec() == QDialog::Accepted)
{
     printer.setResolution(600);
     HDC hdc = pPrinter->paintEngine()->getDC();
     int VertsizePixel = GerDeveceCaps(hdc,VERTREZS);
     int nHorzsizePixel  = GetDeviceCaps(hdc,HORZSIZES);
}
delete pPrinter;
pPrinter = NULL;
但是我无论把SetResolution函数的参数设置成多少,GerDeveceCaps函数返回的值都不变,
但是如果我如果手动的在打印机的首选项中设置的话GerDeveceCaps的返回值就会改变。

发现SetResolution函数设置的是logcaldpi
而在菜单中设置的是physicaldpi
现在的问题是我怎么在代码中设置physicaldpi
请高人指点~~~~~
[ 此帖被176107519在2009-03-02 16:01重新编辑 ]
离线176107519

只看该作者 1楼 发表于: 2009-03-03
没有人知道吗。。。  自己顶一下吧
快速回复
限100 字节
 
上一个 下一个