pdf - 如何使 vbs 脚本文件 (.vbs) 等到 PDF 打印机另存为弹出窗口?
问题描述
我能够使用批处理文件(.bat)和相关文件,通过该软件中的“文件>保存JPG”自动从高速公路建模软件(即SATURN)创建jpg图像地图输出(.jpg),没有任何问题。它与循环功能很好地重复此过程。
现在,我想自动创建 pdf 地图输出 (.pdf),这比上述过程更棘手。创建 pdf 输出的手动方法是在此软件中打开 SATURN 文件,根据我的喜好修改屏幕,单击此软件中的“文件 > 打印图形”,选择 pdf 阅读器打印机(来自 C:\Program Files \Tracker Software\PDF-XChange Standard\pdfSaver.exe)在打印机设置弹出窗口中(正如您在请求打印时在任何其他应用程序中看到的那样),按“打印”按钮,在“另存为”中键入 pdf 文件名” 弹出窗口,按“保存”按钮并等待创建 pdf 文件。
但是,我需要创建许多 pdf 地图输出,这意味着要多次重复此手动过程,这将需要很长时间。在尝试使其完全自动化的同时,我在批处理文件的一部分(最初用于上述 jpeg 图像映射输出的创建)中添加了一项功能,以打印到文本文件(“temp_pdfprinting.txt”),转换它到以下 vbs 脚本文件(“temp_pdfprinting.vbs”),然后将其作为批处理文件运行的一部分打开以创建 pdf 输出。它几乎可以工作 - 但它还没有。我尝试在 vbs 脚本文件中添加“Do”作为第一行,将“Loop”作为最后一行添加,但后来我的电脑崩溃了!
我的问题是:如何让这个 vbs 脚本文件等到该打印机设置弹出窗口,然后在创建 pdf 文件时弹出“另存为”并关闭,而不会出现任何中断(例如从下一个 pdf 地图输出创建)?
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.SendKeys "C:\Modelling\SATURN models\Outputs\DelayPlot_DS2030AM_LocalExtent.pdf"
WshShell.SendKeys "{ENTER}"
解决方案
推荐阅读
- node.js - TypeError:无法读取未定义的属性“角色” - 输入被错误读取
- python - 在 python 中拟合 SARIMA 模型时如何包含常量/截距
- rust - 生命周期阻碍状态机返回到最近的状态
- angular - 看不到值来自服务的变量的出价
- java - java的标准网络API与netty有何不同?
- postgresql - 我正在尝试从表中提取国家信息,但无法在 postgresql 中进行
- webauthn - WebAuthn 身份验证器证明响应 id 和 rawId
- html - 如何调整 div 的大小以适应其所有内容
- reactjs - 处理反应错误的加载程序参考
- sql - ORA-14097: ALTER TABLE EXCHANGE PARTITION 中的列类型或大小不匹配