我一直想弄清楚这一点,但遗憾的是我无法弄清楚。
我想从任何打印机驱动程序打印 PDF,比如说,EPSON TM-T20II,我安装了 PDFCreator,并尝试使用它的端口,但它崩溃了。
提出这个请求的原因是,我必须为我的客户测试多台打印机和打印选项,而且我并不总是随身携带每台打印机,所以我想尝试使用 PDF。但我无法在 PDFCreator 上配置合适的尺寸。
因此,欢迎提出任何建议或解决方案。提前致谢!
答案1
打印机驱动程序输出作为源
打印机驱动程序从应用程序获取输出要求(页面上需要显示什么以及在哪里显示),并将其转换为打印机使用的命令,使其与打印机硬件相近。如果您想在没有打印机的情况下测试特定打印机,则需要特殊的软件来将原始打印机命令(通常从打印后台处理程序捕获)转换为可用的东西,例如 PDF。
请注意,由于打印机命令仅产生应用程序输出规范的近似值,因此您无法通过转换打印机命令完美地重新创建输出规范。当您将输出转换为另一种形式时,您会得到性能下降,这反映了命令所针对的硬件的限制。
因此,将打印机命令转换为 PDF 然后查看该 PDF 看起来与直接从应用程序生成的 PDF 输出不同。但它也不会完美地呈现打印输出。将墨水或碳粉点(或将热量点施加到热敏纸上)的点大小或特性与 PDF 中的像素不同。
需要什么
您不能使用 PDF 打印机驱动程序来转换另一个打印机驱动程序的输出。并且 PDF 实用程序(如 PDFCreator)旨在与应用程序或常见文件格式配合使用,而不是与打印机命令配合使用。
在 PDF 出现之前(可以追溯到 Windows 98 时代),人们需要这种东西,并且开发了一些应用程序来实现这一点,主要是针对 PCL(由 HP 开发的打印机命令语言,也是其打印机协议的支柱)。事实证明,其中一些东西仍然存在,例如VeryPDF PCL 转换器,它并不便宜,而且我不能保证它能多好地翻译打印机特定的输出。
如果您在互联网上搜索,您仍可能会找到类似的软件,它们可能适用于一些主要的打印机品牌,至少在您测试简单的打印要求而不调用任何特殊的打印机功能的情况下。话虽如此,如果这种软件可用于热敏收据打印机之类的东西,我会感到惊讶,就像问题中提到的那样。
解决方案的想法
没有通用的方法可以做到这一点。如果您想验证特定打印机的输出,您要么需要打印机,要么需要定制软件来翻译或验证输出。请记住,即使将打印机命令转换为 PDF 也并非 100% 万无一失。您可以拥有有效的命令,并生成正确的 PDF,但输出可能不符合特定打印机的限制,因此在现实生活中不起作用。
购买打印机比开发定制软件更快捷、更便宜。但如果是为客户开发,您可以要求他们借给您一台打印机进行测试,或者亲自去他们的打印机上测试(或要求他们为您测试)。
如果您只是对输出布局(页面上的外观)感兴趣,而不需要测试特定打印机的渲染能力,并且如果您使用常用软件来创建输出,我认为您可以使用几乎任何 PDF 打印机驱动程序,或从现成的 PDF 实用程序中进行选择。