【发布时间】:2014-01-02 00:23:19
【问题描述】:
我正在开发一个使用 ITextSharp 生成 pdf 并且需要静默或直接打印的应用程序。我的工作流程是这样的,我在树结构中列出了一些表格,选择表格并单击打印按钮将使用 Itextsharp 自动生成 pdf 并保存到一个位置。这是因为对于多条记录,我们将其下载为 zip 文件。并在不打开任何其他窗口的情况下进行打印。我正在使用谷歌浏览器作为浏览器并使用 KIOSK 模式。
但不幸的是,当我执行代码时,打印预览将在我的浏览器中打开,我需要单击后退按钮才能到达我的页面。我希望这被清除。我还需要清除树结构的选择。
特此在打印时附上代码。
MemoryStream ms = new MemoryStream();
var urlPdf = Server.MapPath("~/Pdf/pdfMerge/" + id + "Merge_doc.pdf");
PdfReader ps = new PdfReader(urlPdf);//1
PdfStamper pdf = new PdfStamper(ps, ms);//2
pdf.JavaScript = "this.print({bUI: true,bSilent:false,bShrinkToFit: true});" + "\r\n" + "this.closeDoc();";//3
pdf.Close();//4
HttpContext.Current.Response.ClearContent();//5
HttpContext.Current.Response.ClearHeaders();//6
HttpContext.Current.Response.ContentType = "application/pdf";//7
HttpContext.Current.Response.AddHeader("Content-Disposition", "inline;filename=quickforms.pdf");//8
HttpContext.Current.Response.BinaryWrite(ms.ToArray());//9
ms.Flush();
谁能帮帮我?
【问题讨论】:
-
我不熟悉你的 JavaScript 参数,但你不想要
bUI: false,bSilent:true,所以 no 显示 UI 并静默打印? -
即使我更改了该代码也不会发生任何变化
-
您能告诉我们您在哪里找到这些参数的文档吗?
-
为了您的理智,打印参数(bUI、bSilent、bShrinkToFit)记录在“使用 JavaScript 开发 Acrobat 应用程序”-“打印 PDF 文档”中:adobe.com/content/dam/Adobe/en/devnet/acrobat/pdfs/…
标签: asp.net google-chrome printing