我正在开发一个C#桌面应用程序,需要更改一些打印机设置并打印一些图片。在我的程序中,我已经可以设置纸张大小、打印机名称等等。如果我进入打印机首选项的高级选项,会看到一个名为“打印机功能”的部分。我无法找到如何访问打印机设置参数的方法。例如,“边框”、“涂层完成”、“2英寸裁剪”等等。特别是我所关心的是“2英寸裁剪”。
如何在运行时获取这些属性?
更新: 我稍微修改了图片和问题,以使其更加具体。
如何在运行时获取这些属性?
更新: 我稍微修改了图片和问题,以使其更加具体。
好的,我找到了一个对我非常有效的解决方案,希望这能帮助其他人。
经过一番调查,我发现我的打印机没有设置允许通过驱动程序访问那些功能。所以我在Windows的打印机和设备中创建了第二个配置文件,连接到同一台打印机、相同的端口和驱动程序。然后,我只需根据我的需要选择不同的打印机配置文件即可。非常好用。
感谢所有做出贡献的人。
您可以使用DEVMODE结构的dmPrintQuality成员设置打印机质量。其他打印机功能可能不适用于所有打印机。某些打印机驱动程序可能会公开与其他打印驱动程序非常不同的属性。这通常是使用上述结构的dmDriverExtra额外成员完成的。正如MSDN所说,dmDriverExtra是私有打印机数据:
包含紧随此结构后面的私有驱动程序数据的字节数。如果设备驱动程序不使用设备特定信息,请将此成员设置为零。