当前位置: 首页 > 知识库问答 >
问题:

iTextSharp打印到PDF显示CSS和JS在PDF[复制]

裴承安
2023-03-14

我用的是iTextSharp。dll将我的页面打印为pdf。我唯一的问题是pdf显示了我在页面上的CSS和JavaScript。有没有一种方法可以将iTextSharp设置为不显示CSS/JS?

是的,我把我的CSS/JS直接输入到. aspx页面——因为这是一个小项目。当然,对于一个大项目,我会把它分开。

编辑
这是我当前写入页面的语法

Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment;filename=TestPage.pdf");
Response.Cache.SetCacheability(HttpCacheability.NoCache);
StringWriter sw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(sw);
this.Page.RenderControl(hw);
StringReader sr = new StringReader(sw.ToString());
Document pdfDoc = new Document(iTextSharp.text.PageSize.A4.Rotate(), 10, 10, 10, 10);
pdfDoc.SetPageSize(iTextSharp.text.PageSize.A4); 
HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
pdfDoc.Open();
htmlparser.Parse(sr);
pdfDoc.Close();
Response.Write(pdfDoc);
Response.End();

共有1个答案

梁嘉澍
2023-03-14

在打印时遇到了类似的问题,并通过使用字符串删除样式来解决。替换方法查看可能有助于解决问题的代码

  Regex regSimple = new Regex(@"(?i)<img\b[^>]*?style\s*=(['""]?)(?<style>[^'""]+)\1[^>]*?>");
        if (regSimple.IsMatch(html))
        {
            html = html.Replace(Convert.ToString(regSimple.Match(html)), Convert.ToString(regSimple.Match(html)).Replace("style=\"", "").Replace("height:", "height=\"").Replace("\"width:", "width=\""));

        }
 类似资料:
  • 我读了很多关于SO的帖子,并搜索了很多解决方案,所有这些似乎都回避了我的特定问题。 是否有一种方法可以使用正确的页面大小将现有的PDF复制到新文档中? 谢谢。 更新 接受了布鲁诺的建议,我仔细检查了剪裁框和媒体框。我正在使用的PDF两者都有。裁剪框数组为 但是这样做会使“文本”向右和顶部移动太多,留下不均匀的边距。 我发现通过改变左下角的坐标,裁剪框,我可以移动文本。事实上,将裁剪框设置为40、4

  • 我在用iTextVB。net将一些背景(即其他单页pdf)打印到另一个pdf上。 所以我有一个5页的“空白”pdf,我在第一页上盖上一个名为page1的文件的第一页。pdf,然后我把第2页的第一页。pdf作为第2页等的背景。 到目前为止,它运行良好,但我遇到了一个问题,在我的“空白”上打上一个特定的pdf文件——问题似乎与我称之为“page4”的文件有关。这似乎是因为第4页。pdf被设计成一个可填

  • 问题内容: 我是JasperReports的新手,发现自己迷失了它。我在JSF中有一个webapp,我想用它来打印PDF。我已经建立了报告,并且能够成功地编译并使用我的所有参数填充它。但是,我不了解实际的输出部分。我希望它以PDF格式发送到打印机。我根本不在乎在屏幕上看到它,直接到打印机是理想的选择(从服务器是理想的选择,但是客户端也可以,因为我们可以根据需要设置客户端进行打印(这是一个内部应用程

  • 问题内容: 我有一个PDF文档,我想用我的python应用程序打印它。 我在这里尝试了解决方案(使用python的win32print模块打印PDF文档吗?),但是当我安装Ghostscript 9.15(即实际版本)时,它没有 我使用该命令的方式起作用,但是它会打开默认查看器(我的浏览器是Adobe Reader),并且在打印后它仍然保持打开状态,试图通过杀死其他打开的窗口来终止该进程,但我不希

  • 我有一个带有ASP.NetWeb API的angular2项目。我有代码从我的数据库中检索到服务器上文档的文件路径。然后我想在浏览器的新选项卡中显示这个文档。有人有什么建议吗? 我很高兴在Angular2(Typescript)或我的API中检索文件并将其流式传输。 这是我尝试在我的API中检索它,但我不知道如何在Angular2中接收它并正确显示它: 任何帮助将不胜感激。 非常感谢!!!

  • 我正在尝试使用Chrome的Headless功能将html转换为PDF。然而,我根本得不到输出。控制台也不显示任何错误。我正在我的windows M/C中运行以下命令。 chrome--无头--禁用GPU--打印到PDF 我试过了所有的选择。没有生成任何内容。我用的是chrome版本60