这是我的情况:
- 我正在为第 3 方程序开发 C# 插件
- 该程序 (Revit) 使用自己的打印方法并通过其 API 公开它们
- 我正在编写一个打印实用程序,它使用这些方法打印到各个位置,包括 PDF 打印机
- 我正在使用 PDF995 作为打印机并修改其 .ini 文件以使其自动化。
- 基本上,我在 API 中调用 print 方法,将活动图形打印到指定的打印机。
我的问题是,在 PDF995 上,如果您转到 Windows 中的打印首选项,则方向默认设置为“纵向”。我需要风景。这些设置似乎覆盖了我在 Revit API 中设置的任何内容,因此我需要一种更改 Windows 设置的方法。
我试过这段代码:
PrintDocument printDocument = new PrintDocument();
printDocument.PrinterSettings.PrinterName = "PDF995";
printDocument.DefaultPageSettings.Landscape = true;
在调用 API 中的 print 函数之前,但它没有区别。我也看不到编辑 pdf995 ini 来设置这些设置的方法。这是我需要覆盖的 Windows 设置。
我在网上看到了一些 C++ 代码,我可以调用它来处理打印机,但找不到更改默认设置的示例。
谁能指出我正确的方向?