4

我正在开发一个 C# 桌面应用程序,我需要在其中更改一些打印机设置并打印一些图片。在我的程序中,我已经可以设置纸张尺寸、打印机名称等...如果我进入打印机首选项的高级选项,有一个名为“打印机功能”的部分。我不知道如何访问打印机设置中的参数。例如有“Border”、“Overcoat Finish”、“2inch cut”等。我特别感兴趣的是“2inch cut”。

在此处输入图像描述

如何在运行时获取这些属性?

更新 我改变了图片和问题更具体一点。

4

2 回答 2

3

好的,所以我遇到了一个非常适合我的解决方案,希望这对其他人有帮助。

经过一番研究,我发现我的打印机没有设置为允许通过驱动程序访问这些功能。所以我所做的是在 Windows 中的打印机和设备中创建第二个配置文件,该配置文件使用相同的驱动程序连接到同一端口上的同一台打印机。然后使用我的程序,我只需根据我的需要选择不同的打印机配置文件。奇迹般有效。

感谢所有做出贡献的人。

于 2013-01-24T16:11:21.473 回答
0

您可以使用 DEVMODE 结构的 dmPrintQuality 成员设置打印机质量。其他打印机功能可能不适用于所有打印机。某些打印机驱动程序可能会公开与其他打印驱动程序完全不同的属性。这通常使用上述结构的 dmDriverExtra 额外成员来完成。正如MSDN所说 dmDriverExtra 是私人打印机数据:

包含遵循此结构的私有驱动程序数据的字节数。如果设备驱动程序不使用特定于设备的信息,则将此成员设置为零。

于 2013-01-03T14:33:43.233 回答