【发布时间】:2013-01-16 15:17:33
【问题描述】:
显然,关于以 A4 和 A5 格式打印 HTML 的问题与询问打印 RTF 格式文本的问题完全相同,所以这里有另一个问题,有点详细更布局。
我正在开发一个应该打印订单的 C# (WinForms) 程序。该程序是为 .NET 2.0 框架编写的。该程序必须能够以 A4 和 A5 纸张格式打印,没有任何用户干扰(无对话框)。打印的订单应该看起来与在网络浏览器中的完全一样。如果您想看看它应该是什么样子,可以查看 this sample。如您所见,非常基本的东西。
这是我迄今为止尝试过的:
- 询问question on StackOverflow,因重复而被关闭。从未找到重复项。
- 使用 WebBrowser 元素进行打印。无法打印 A5,所以没有解决办法。
- 将 HTML 放入 RichTextBox 并打印出来。它有效,但它没有像在网络浏览器中查看的那样显示 HTML,这是一项要求。代码可以在here找到。
- 我曾考虑在打印前转换为 PDF,但这要么很昂贵,要么根本无法使用(对我来说,作为一个几乎没有 C# 经验的程序员)。这些工具通常依赖于安装在用户计算机上的软件(例如用于打印的 Acrobat Reader),我试图避免这种情况。
- 在 Google 中查看了每个相关链接至少 13 页,但运气不佳。我已经在这里呆了大约 2 天半了。
如果有人有(免费)更好的方式来打印格式化的 HTML,就像在浏览器中查看一样,无需用户干预或外部依赖,请分享。我真的需要这个来工作。
请不要关闭此问题,当我说我积极搜索描述我的问题的解决方案或文章时,请相信我。有些是相关的,但没有解决我遇到的问题。我也使用了这个网站上的高级搜索,没有运气。
感谢您抽出宝贵时间阅读本文。
注意:当我说我从未找到重复的内容时,我的意思是我从未找到真正描述我的问题的文章。
【问题讨论】:
-
"从未找到副本?"在封闭的问题中有一个链接。 stackoverflow.com/questions/7399842/… 无论如何,如果您认为问题不应该被关闭,或者在提出一般问题时遇到问题,您应该在 Meta SO 上发帖,而不是 SO。
-
问题是网络浏览器对打印的支持非常有限,并且无法控制纸张选择、打印分辨率、双面打印等。
-
当我说我从未找到重复项时,我的意思是我从未找到真正描述我的问题的文章。它链接到的文章是关于打印我已经拥有的 RichTextBox 内容,正如我在问题中描述的那样。
-
@Pointy 我不介意忘记通过网络浏览器进行打印,任何打印 HTML 就像在浏览器中查看的方式都是一种礼物。