我用iTextSharp生成了一个PDF,我可以在ASP.NET中很好地预览它,但是我需要直接将它发送到打印机而不需要预览。
我知道可以使用javascript window.print()将页面直接发送到打印机,但我不知道如何将其用于PDF。
编辑:它不是嵌入式的,我是这样生成的;
...
FileStream stream = new FileStream(Request.PhysicalApplicationPath + "~1.pdf", FileMode.Create);
Document pdf = new Document(PageSize.LETTER);
PdfWriter writer = PdfWriter.GetInstance(pdf, stream);
pdf.Open();
pdf.Add(new Paragraph(member.ToString()));
pdf.Close();
Response.Redirect("~1.pdf");
...
而我就在这里
5条答案
按热度按时间x33g5p2x1#
最后我做出来了,但是我不得不使用IFRAME,我在aspx中定义了一个IFrame,没有设置src属性,在我做的cs文件中生成了pdf文件,并将IFrame的src属性设置为生成的pdf文件名,像这样;
这使得窍门,然而,我认为我应该实现你的解决方案Stefan,问题是,我是新的asp.net和javascript,如果我没有一个完整的源代码,我不能编码你的建议,但至少是第一步,我很惊讶有多少代码在html和javascript我需要学习. Thnx.
h22fl7wq2#
pdf是嵌入在带有embedd-tag的页面中,还是只是在框架中打开,或者你是如何显示它的?
如果它是嵌入式的,只需确保对象被选中,然后执行print()。
获取嵌入文档的引用。
u91tlkcl3#
如果你使用的是pdfsharp,这会有点棘手,但也是可行的
6qfn3psc4#
试试这个gem:
我还没有测试过它,但我所读到的,它可以用这种方式让mypdf.pdf打印,而不是页面内容,无论你用什么方法打印页面。
搜索media=“print”查看更多信息。
8xiog9wr5#
你可以在pdf中嵌入javascript,这样用户在浏览器加载pdf时就可以看到一个打印对话框。
我不确定iTextSharp,但我使用的javascript是
对于iTextSharp,请查看http://itextsharp.sourceforge.net/examples/Chap1106.cs