【问题标题】:Generic text-only printer driver doesn't work通用纯文本打印机驱动程序不起作用
【发布时间】:2012-07-18 04:58:28
【问题描述】:

我正在使用通用纯文本打印机驱动程序,作为 WDK(Windows 驱动程序工具包)中的示例提供。但它适用于某些应用程序,不适用于其他应用程序。就像它适用于记事本和 Microsoft word,但不适用于 chrome 浏览器或FloreantPOS。我尝试使用此驱动程序通过以下 4 个应用程序打印到文件或热敏打印机:-

1)记事本上的简单文本:成功运行。

2)Microsoft Word 上的文本 + 图形(艺术字):工作成功,即打印文本并省略图形

3)在 Chrome 浏览器上从谷歌文档打印简单文本:不起作用,即在打印到文件的情况下,文件为空,在打印到热敏打印机的情况下,我得到一个空白页

4) 打印来自FloreantPOS 的收据:同(3)。

我想知道是否有人可以告诉我 chrome 和 FloreantPOS 有什么不同?另外,我可以对通用纯文本驱动程序进行一些更改以使其与 chrome 和 FloreantPOS 一起使用吗?

谢谢!!

【问题讨论】:

  • 有人可以帮我吗? :)
  • 记事本只能处理文本,因此它是纯文本驱动程序的完美补充。 Word 具有保存到纯文本文件的功能,它可能在检测到纯文本驱动程序时使用相同的功能。其他一切都将使用 GDI 图形调用。
  • @MarkRansom:不幸的是,很少有应用程序会费心检测它们正在打印的打印机类型并相应地调整它们的行为。据我所知,没有任何 Windows 应用程序会这样做。他们都只使用 GDI。
  • @CareyGregory,很少有打印机驱动程序是通用文本。我不认为这是 Windows 生态系统的失败,我认为这是一种优势。
  • @MarkRansom:说得好,我同意。

标签: windows google-chrome printing gdi+ gdi


【解决方案1】:

Chrome 将文本打印为图形,或者至少在我尝试过的所有网站上打印。它使用线条绘制来绘制文本而不是打印实际字符;因此,纯文本驱动程序无法打印任何内容。您可以通过打印到 Adob​​e PDF 然后打开生成的 PDF 并使用预检分析对其进行检查来证明这一点。我从 cnn.com 网站打印了 20 页,并在 PDF 中得到 no 文本。当我打印到 Windows 纯文本打印机时,我只得到一堆换行符。

不幸的是,一些应用程序以这种方式打印。我用 Firefox 得到了同样的结果。 (浏览器都是出了名的不擅长打印。)在 tumblr.com 上使用 Firefox,这主要是纯文本,我得到了完全的垃圾。最有可能的是,Firefox 使用字形 ID 而不是字符进行打印,纯文本驱动程序可能无法正确处理。

恐怕除了使用不同的驱动程序之外没有其他解决方法。纯文本驱动程序非常有限,我怀疑它是否适用于大多数应用程序。我希望即使是 Word 也会因某些字体而失败。我建议改用 Unidriver Postscript 或光栅驱动程序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-12
    • 2017-12-16
    • 2011-10-02
    • 2018-04-18
    • 1970-01-01
    • 1970-01-01
    • 2021-12-07
    • 2017-03-23
    相关资源
    最近更新 更多