c# - 打开打印机对话框

标签 c# asp.net winnovative

我正在使用 winnovative html 到 pdf 转换器来创建 pdf 文档。我添加了一个复选框供用户选择是否要打印或通过电子邮件发送 pdf 文件。

但我无法获取打开打印机对话框的 pdf 页面。我已经尝试过 PrinterDialog 类,但这没有用,发送一些带有 window.print() 的 javascript 也没有用。我已在互联网上搜索但找不到任何内容。

我的包含 PDF 的页面具有以下代码:

Response.Clear();
Response.ContentType = "application/pdf";
Response.AppendHeader("Content-Disposition", "inline;filename=Offerte.pdf");
Response.BufferOutput = true;
Response.AddHeader("Content-Length", downloadBytes.Length.ToString());
Response.BinaryWrite(downloadBytes); //downloadBytes = the byte array created by winnovative converter
Response.End();

这将在浏览器中打开 pdf 查看器,其中包含我的 PDF 页面。从这里,用户可以单击 pdf 查看器/浏览器的打印按钮。但我想让我的页面打开打印机对话框或将字节直接发送到打印机,以最大限度地减少用户必须执行的操作。

有什么想法吗?

最佳答案

由于您正在流式传输 PDF,因此您的选择有限。

我认为最好的方法是使用这种方法:https://stackoverflow.com/a/2495430/293712 .在新窗口中打开 PDF(此新窗口可以流式传输)。然后,您可能会从父窗口调用 window.print(如果您使用 window.open 打开它),甚至在完成后关闭窗口。

关于c# - 打开打印机对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8355737/

相关文章:

c# - 名称 'html' 也不存在于用户控件 MVC 和 C# 的当前上下文中的名称 'model'

C#, Windows Services : ServiceBase. Run with several services of the same type

c# - 上传的 HttpPostedFile 为空

c# - 我应该为 .NET 使用哪个 Memcached 客户端库?

javascript - Winnovative HTML 到 PDF 转换器

pdf - 使用 HTML 到 PDF 转换器(例如 Winnovative)标记 PDF

c# - 在 C# 中,为什么在这种情况下使用字段与自动实现的属性会导致不同的行为?

c# - DownloadText() 和 DownloadTextAsync() 有什么区别?

c# - 从 ComboBox 中检索 DataSource 的内容