我正在开发一个C#桌面应用程序,我需要更改一些打印机设置并打印一些图片。在我的程序中,我已经可以设置纸张尺寸,打印机名称等...如果我进入打印机首选项的高级选项,有一个名为“打印机功能”的部分。我无法弄清楚如何访问打印机设置中的参数。例如,有“边框”,“大衣完成”,“2英寸切割”等。具体我感兴趣的是“2英寸切割”。
如何在运行时获取这些属性?
更新 我改变了图片并提出了一些更具体的问题。
答案 0 :(得分:1)
好的,所以我遇到了一个对我来说非常好的解决方案,希望这会对其他人有所帮助。
经过一番研究后,我发现我的打印机没有设置为允许通过驱动程序访问这些功能。所以我所做的是在Windows中的打印机和设备中创建第二个配置文件,使用相同的驱动程序连接到同一端口上的同一台打印机。然后使用我的程序,我只根据我的需求选择不同的打印机配置文件。奇迹般有效。
感谢所有贡献的人。
答案 1 :(得分:0)
您可以使用DEVMODE结构的dmPrintQuality成员设置打印机质量。其他打印机功能可能不适用于所有打印机。某些打印机驱动程序可能会暴露与其他打印驱动程序完全不同的属性这通常使用上述结构的dmDriverExtra额外成员来完成。正如MSDN所说dmDriverExtra是私人打印机数据:
包含此后的私有驱动程序数据的字节数 结构体。如果设备驱动程序不使用特定于设备的 信息,将此成员设置为零。