无法为具有编程访问权限的CutePDF自定义PDF编写器设置dmColor和dmPrintQuality

时间:2016-03-25 09:11:02

标签: windows winapi printing

我们正在使用具有编程访问权限的CutePDF Custom PDF Writer在C-Windows应用程序中自动生成PDF。

我们使用DocumentProperties()来设置纸张尺寸和方向,但我们无法更改打印颜色和打印​​质量设置。

有效的变更:

// Set landscape or portrait
pi2->pDevMode->dmFields = DM_ORIENTATION;
pi2->pDevMode->dmOrientation = dmOrientation;

// Custom paper size
pi2->pDevMode->dmFields |= DM_PAPERLENGTH | DM_PAPERWIDTH | DM_PAPERSIZE;
pi2->pDevMode->dmPaperWidth = PDFPrinterSizes[papper].dmPaperWidth;
pi2->pDevMode->dmPaperLength = PDFPrinterSizes[papper].dmPaperLength;
pi2->pDevMode->dmPaperSize = DMPAPER_USER;

无效的更改:

// Print in 600 dpi
pi2->pDevMode->dmFields |= DM_PRINTQUALITY;
pi2->pDevMode->dmPrintQuality = 600;

// Print in color
pi2->pDevMode->dmFields |= DM_COLOR;
pi2->pDevMode->dmColor = DMCOLOR_COLOR;

而是使用系统中最后使用的设置打印文档。即如果我用不同的打印机打印颜色,PDF:s将是彩色的。如果我以单色打印到另一个打印件,我将获得单色输出。

dmColor设置是否始终为DMCOLOR_COLOR以支持灰度输出?
如何强制CutePDF自定义PDF编写器以彩色打印?

加分问题:dmPrintQuality的问题是否相关?

0 个答案:

没有答案