【发布时间】:2009-08-12 22:05:32
【问题描述】:
我有一个 html 字符串,我想把它打印出来。我可以打开确认或打印预览对话框我只想要这样的功能
HtmlPrinter.PrintHtml("<html><body>Page I'm printing</body></html>");
任何人都知道任何可以像这样工作的东西吗?
【问题讨论】:
-
C 语言中有一个“printf”……也许你应该试试看! :-D(在这里讽刺)
我有一个 html 字符串,我想把它打印出来。我可以打开确认或打印预览对话框我只想要这样的功能
HtmlPrinter.PrintHtml("<html><body>Page I'm printing</body></html>");
任何人都知道任何可以像这样工作的东西吗?
【问题讨论】:
Web 浏览器使您能够打印当前页面。您可以通过 javascript 触发打印对话框,也可以使用 CSS 设置页面样式,使打印输出与屏幕上显示的内容几乎没有相似之处,但就打印而言,仅此而已。
除了普通的 html,您还可以使用 flash、silverlight 或其他浏览器插件之类的东西。但实际上你能得到的最接近的是这样的:
<html>
<head>
<style>
@media print
{
.HidePrint { display:none; visible:none;}
}
@media screen
{
.HideScreen {display:none; visible:none;}
}
</style>
</head>
<body onload="window.print();">
<div class="HideScreen">
Page I'm printing
</div>
<div class="HidePrint">
Other content...
</div>
</body>
</html>
【讨论】:
显然,乔尔斯的答案是正确的。
帮助您了解原因; C# 在服务器上运行,JavaScript 在客户端上运行。如果您确实尝试从 C# 打印,那么您将从您的服务器计算机打印:)
【讨论】: