问题标签 [virtual-printer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - 我们可以在可用打印机中列出虚拟打印机而不为其编写驱动程序吗
当我从任何应用程序进行打印时,我希望在可用打印机下列出一个虚拟打印机,这个虚拟打印机会将打印数据发送到我的代码以进行一些调整。
而且我相信我不需要为此编写新的驱动程序,因为 Microsoft 本身为 Windows 提供了通用驱动程序、Postscript 和 XPS 驱动程序。
我的信念对吗?我能以某种方式利用这些现有的驱动程序来创建虚拟打印机吗?
我应该怎么做才能实现我想要的?
windows - 如何确保在 Windows 升级后为打印驱动程序生成正确的 .BUD 文件
升级 Windows 10 后。Windows 10 创建者更新我自己的虚拟打印机(基于 unidrv)不可用。当我在控制面板中选择它时,我会看到一个安装驱动程序的对话框(我忽略它),然后按取消,您会看到只读的打印机属性(不可用)。
该问题似乎与生成的 .BUD 文件不正确有关。在用 .BUD 文件(在打印机驱动程序工作后保存)替换 Creators 升级后错误生成的 .BUD 文件时,驱动程序工作。(通过更新恢复等进行了测试。)通过进程监视器,我看到一个访问被拒绝,然后对 .BUD 文件的 CreateFile 操作取得了很多成功。
所以我想知道:为什么那个 .BUD 文件生成不正确?
在搜索时,我发现了这个https://superuser.com/questions/17981/why-is-my-current-printer-unavailable-in-office/70477#70477,它会引导您访问https://web.archive。 org/web/20150511125304/https://support2.microsoft.com/default.aspx?scid=kb;en-us;873396
引用 KB:
“出现此问题是因为您没有创建或重新创建已解析的二进制打印机描述文件 (.bud) 所需的权限。”
有没有人有这方面的经验?我正在寻找一种方法来防止在主要的 Windows 升级后错误地生成打印机驱动程序的此类 .BUD 文件。
是否应将某些内容添加到注册表或 PC 上的特定文件中,以确保升级 Windows 不会使打印机驱动程序无效?或者你如何确保驱动程序自动拥有所有正确的权限?
希望这里有一些专家可以说明真正的原因以及如何预防它。
c# - 如何伪造 AirPrint 打印机
我想编写(最好用 C# 编写,但这不是必需的,最好是在 Windows 上,同样,这不是必需的)看起来 iOS 设备是 AirPrint 打印机的东西。我希望 iOS 设备的用户体验与真正处理 AirPrint 打印机时一样。我希望能够将输出打印为 pdf 文档和识别用户的内容。我想存储输出以供以后打印。我希望有人可以为我指明一些有助于我实现这一目标的文档或学习材料的方向。我已经在网上做了很多浏览,并画了一个空白。有一些实用程序可以让 iOS 发现非 AirPrint 打印机,所以我认为我想做的事情可以实现。
c# - 使用 gostscript 或 ps2txt 转换器将 Postscript 文件转换为文本文件
我正在尝试使用名为Printer++ 的第 3 方开源软件为我的 C# 应用程序开发虚拟打印机。
我实现了在 temp 目录中生成 postscript 文件,但我不知道如何将其更改为文本格式。我尝试使用来自verydoc的Gostscript和Postscript到文本转换器,但没有成功。
您能给我一些提示或 C# 示例示例吗?
c++ - 如何在 V4 打印机驱动程序中设置输出文件的修复目录
我正在使用 V4 打印机驱动程序,我需要将输出 xps 文件存储到特定文件夹,而不是让用户选择输出文件夹。
c# - 如何通过“Microsoft 打印到 PDF”以编程方式将文件和网页打印到 PDF?
我正在开发一个用 c# 编写的 UWP 应用程序,我需要转换为 pdf:-办公文档(doc、docx、xls、xlsx、ppt、pptx)-图像-网页
该应用程序必须在 x86、x64、ARM、ARM64 架构中工作。
我知道市场上有第三方转换器库,但只有少数在 ARM64 环境或 UWP 中工作。
我的想法是使用(在 Windows 10 中)允许用户将大多数文件格式保存为 PDF 的“Microsoft PDF 打印机”。
我发现很多帖子都在问同样的问题,但没有一个真正包含有用的答案。
我找到并测试的代码如下:
上面的代码生成一个有效但为空的 pdf。我应该如何设置原始文件内容?
例如,如果我有一个名为myreport.docx的 Word 文件,我是否应该将其转换为字节数组并将其设置在某个地方?
先感谢您。
utf-8 - 将 .ps 文件转换为 .txt(俄语)
我正在研究虚拟打印机的项目,我想将 ps 文件转换为 txt 和 pdf。我正在使用 ps2pdf 并且它可以很好地转换为 pdf,但是当我想将 ps 文件转换为 txt 时,我使用 ps2ascii ,然后出现了问题。ps 文件包含俄语符号。如何将 ps 文件转换为 txt(俄语)?我在网上看到这是 unicode 问题。
pdf - 如何使用 ghostscript 在我的虚拟打印机上正确获取 Microsoft Word 打印 docx?
我正在实现一个与谷歌云打印机相同的程序。它是使用 postscript 类驱动程序的虚拟打印机。如图(我加了64后缀)。中文翻译成英文是Helpfile,ConfigurationFile DataFile DriverFile Dependency。
我使用 redmon 捕获标准输入并使用 ghostscript 将其转换为 pdf。同时我从打印机队列中获取作业信息。有了 pdf 和工作信息,我可以将它们发送到我的服务器。然后我的服务器可以打印文档。如图所示,我调用了 ghostscript。
当我使用 WPS(与 Microsoft Word 相同的中文应用程序)打印 docx 文档时,作业队列中的作业信息是正确的。例如,当我打印 test.docx 并选择三份副本、分页、彩色时,我从作业队列中得到了正确的结果。当涉及到 Microsoft Word 时,事情变得很奇怪。当我使用 Microsoft Word 打印 docx 时,我从队列中获取作业信息。无论用户指定多少副本,副本始终是一份。同时,转换后的 pdf 也包含一份副本。这意味着我无法实现我的目标(获取 pdf 和工作信息之类的副本。然后将它们发送到我的服务器)。有谁知道我如何获得正确数量的副本,或者至少它应该表现为 Microsoft Print to Pdf 打印机(如 ps 所示)。我的书面英语不好。谢谢!
ps:我也测试过Microsoft Print to PDF。如果我在 Word 中选择三份,作业队列中的作业信息始终为一份。但是,目标 pdf 文件包含三个副本(如果 docx 为一页,则目标 pdf 为三页)。
c# - 使用 C# 中的虚拟 PDF 打印机以编程方式和静默方式打印 Word 文档
我有一个 Docx Word 文档,我正在尝试使用 PDFCreator 等虚拟 PDF 打印机将其转换为 PDF。我想做与在 Word 中打开文档然后使用系统上安装的可用虚拟 PDF 打印机打印它时相同的操作,但在我的情况下,我有兴趣从 C# 以编程方式和静默方式执行此操作(不向用户显示任何弹出窗口窗户)。
我对使用 Word Interop(办公自动化)不感兴趣。
谁能给我一些例子?
windows - 如何在实际打印机上打印文档时另存为 PDF
我正在尝试找到一个通用解决方案,说明如何在 Windows 7/10 操作系统上的实际打印机上打印时将文档保存为 PDF。场景:无论我要打印的是图像还是文件,还是来自第三方应用程序(如 POS 或丝网打印)(如用户按下第三方应用程序上的 pint 按钮,或者如果第三方应用程序支持此热键,则按 CTRL+P),我需要将文档保存为 PDF 格式,该文档正在到达正在打印硬拷贝的实际打印机。我想推广以支持各种打印机,无论是点阵打印机还是激光打印机或热敏打印机等...
我尝试过的解决方案:
- 虚拟打印机将打印 pdf,然后将 pdf 路由到实际打印机。但是很少有打印机不支持 PDF,例如热敏打印机不支持 PDF,此外,我需要注意纸张设置和页面设置。我试过像 Win2PDF / ClawPDF 这样的虚拟打印机
- 我研究了 Windows 打印体系结构,并尝试保存假脱机文件并监听打印事件并将假脱机文件路由到虚拟打印机以创建 pdf。这部分起作用,因为某些打印机驱动程序会发出 RAW Spool 文件。PCL 和 Postscript 可以很好地转换为 PDF。
- 使用 PrintMulti 之类的打印处理器,但问题与第二个相同。
- 即使我可以从 Windows 打印创建假脱机文件的某种输入文件中得到某种输入文件,我也试图调查,但我无法得到它。
- 我尝试了打印机池,但这就像负载共享之类的东西。
谁能帮我解决这个问题。我也无法通过谷歌找到任何解决方案,所以在这里发布。实现它看起来很正常,但即使在两周后我也找不到任何解决方案。这很难实现通用解决方案吗?