使用TheArtOfDev.HtmlRenderer.PdfSharp从HTML创建PDF

时间:2017-01-13 11:39:27

标签: c# html pdf html-to-pdf html-renderer

我需要将格式良好的HTML字符串转换为PDF文档。

我发现this DLL应该可以满足我的需求,但它在格式化方面效果不佳。

That's我试图转换的HTML代码,并在浏览器上查看它的工作正常(我已经使用了Bootstrap CSS,它被正确引用为cdn)。< / p>

enter image description here

但是一旦转换为PDF,结果如下: enter image description here

这就是我用来转换代码的代码:

        string html = "";

        if (File.Exists(pathIN))
        {
            html = File.ReadAllText(pathIN);
        }

        PdfDocument pdfDocument = new PdfDocument();
        PdfDocument pdf = PdfGenerator.GeneratePdf(html, PageSize.A4, 60);
        pdf.Save(pathOUT);

有没有人有任何建议?

4 个答案:

答案 0 :(得分:2)

使用HtmlRenderer / PdfSharp和Bootstrap控制布局时,我也遇到了这个问题。

虽然它违背了粮食,但我还是使用了表格进行布局。鉴于目的地(pdf)显然是一个固定的宽度,因此不需要响应。

答案 1 :(得分:2)

为了避免对其他人造成无用的努力,即使使用 display: inline-block 来定义宽度,它也不适用于 Bootstrap 之类的 Table。桌子的右侧总是被修剪过,在我的情况下,这个尺寸不适合字母大小。

pls see the snapshot in browser and after rendered to pdf for for the Table

答案 2 :(得分:1)

尝试使用https://wkhtmltopdf.org,适用于引导页面。

答案 3 :(得分:1)

我知道有点晚了,但这可以帮助某人 引导程序的问题在于,使用float:left和pdfsharp不能对齐该属性,而是使用display:inline-block并定义宽度(以像素为单位)。