【问题标题】:Using External CSS Files with iText 7 ConvertToPdf将外部 CSS 文件与 iText 7 ConvertToPdf 一起使用
【发布时间】:2018-06-19 21:58:57
【问题描述】:

大家好,提前感谢您的帮助。我是 iText 7 的新手,正在学习将网页转换为 pdf。代码如下:

            string url = "http://mypage.com";

        WebClient myWebClient = new WebClient();
        Stream myStream = myWebClient.OpenRead(url);

        string dest = @"E:\HTMLToPDF.pdf";
        HtmlConverter.ConvertToPdf(myStream, new System.IO.FileStream(dest, System.IO.FileMode.Create));

页面使用在当前代码下不呈现的外部样式表,但是,当我使用检索到的页面运行替换以将完全限定的路径添加到样式表时(即http://mypage.com/styles/style.css 而不是样式/样式。 css) 页面正确生成。这是我需要合并到代码中以生成 pdf 的东西,还是 iText 中有另一种方法来处理这个问题。任何见解将不胜感激。

【问题讨论】:

    标签: css itext7


    【解决方案1】:

    您需要添加一个ConverterProperties 对象来告诉pdfHTML (使用 setBaseURI)在哪里寻找外部资源。

      // writer
      PdfWriter writer = new PdfWriter(getOutputFile());
      PdfDocument pdfDocument = new PdfDocument(writer);
      pdfDocument.setDefaultPageSize(new PageSize(1000f, 1450f));
    
     // convert
     ConverterProperties converterProperties = new ConverterProperties();
     converterProperties.setBaseUri("base_uri_here");
    
     HtmlConverter.convertToPdf(new FileInputStream(getInputFiles()[0]), pdfDocument, converterProperties);
    

    【讨论】:

    • 完美。感谢您的帮助。
    猜你喜欢
    • 2013-05-09
    • 2011-04-14
    • 2020-02-01
    • 2015-10-22
    • 2013-02-07
    • 2011-12-19
    • 2013-09-23
    • 2017-11-27
    • 1970-01-01
    相关资源
    最近更新 更多