1

我们有一个 WPF 应用程序,它可以执行报告预览或报告打印。两个请求都使用相同的代码。

  • 调用从 Microsoft Report Services 获取报告的报告服务。
  • 将报告转换为所需的格式(在本例中为 PDF)。
  • 然后将报告作为字节数组返回。

然后将结果作为二进制流写入临时文件,然后弹出到窗口进行预览或启动进程进行打印。

在这两种情况下,都会传递临时文件。

打印预览完美无缺!但是打印报告将打印所有出现的“ti”消失。我看到有一个 ESC t NUL/SOH 的打印机转义序列,我假设如果由于某种原因转义字符进入该流,则 ti 将导致打印序列被忽略。因此缺少字符。

我的第一个问题是,是否有人曾经使用生成的 PDF 报告经历过这种情况?

我的第二个问题(显然)是是否有人知道我可以用来查看正在打印的文件中的二进制数据的实用程序,以查看每个“ti”序列之前文件中的内容?

4

5 回答 5

3

经过大量搜索后,我在 Adob​​e 论坛上发现了一篇帖子,其中指出版本 8 存在无法打印字符组合的错误。一旦我深入挖掘,它似乎已经恢复,建议的解决方法解决了我们的问题。

解决方法:打印为图像。

Adobe 似乎无法完成他们软件必须做的最基本的事情,即打印确切的内容!

于 2012-09-05T15:10:02.897 回答
2

回答你的第二个问题:

  • 首先,执行以下两件事之一:
    1. 将 Windows 打印后台处理程序属性设置为不删除打印作业。
    2. 暂停目标打印队列。
  • 然后,从 Windows printspool 目录中获取假脱机文件(您可以通过查看(右键单击)“打印机和传真”文件夹的“属性...”对话框找到该位置)。
于 2012-08-15T21:24:15.273 回答
1

我意识到这是一篇旧帖子,但我想从上述评论中添加一些更新信息,说明这是 Acrobat 8​​ 的问题。我们使用的是 Acrobat 10.1.6,但仍然存在同样的问题。根据我的阅读,这是 adobe 产品本身的问题。我见过的唯一真正的解决方法(实际上是解决方法)是打印为图像。瘸

于 2013-03-05T15:45:32.743 回答
0

令人惊讶的是,这个错误在 2021 年仍然存在。不能依赖 Adob​​e 正确打印文档。如果它不能做它需要的最基本的东西,这会带走它所拥有的所有功能的魅力。

作为图像打印会降低质量并使文档模糊。

只需使用 Safari 或 Chrome 打开文档并从那里打印。乙

于 2021-01-15T11:37:52.823 回答
-1

直接从 firefox(内部的 acrobat 阅读器)打印时,我遇到了类似的问题。我下载了文件然后打印了。问题解决了。

于 2014-07-23T06:34:32.780 回答