关于打印纸张大小设置问题, 求熟悉这块的大仙们解答下
现使用一款相片打印机, 它能支持4*6和6*8等几种尺寸. 现想通过程序来控制打印出相片尺寸. 现遇到的问题是打印6*8的相片, 通过设置DEVMODE中dmPaperSize(或dmPaperWidth, dmPaperHeight), 并重设打印DC, 这些设置全部返回成功. 但把DEVMODE参与设置到DC后, 通过调用GetDeviceCaps()获得相纸大小, 却发现其值并不是之前所设置的, 而是打印机当前默认相纸4*6的尺寸. 这里原因是什么?
请各位帮忙, 谢谢.
代码大致流程:
第一步: 创建打印机设备DC CreateDC();
第二步: 设置相片纸张大小 通过 GlobalLock()获得打印机DEVMODE结构, 修改参数后调用ResetDC()设置打印
第三步: 打印