HtmlRenderer.PdfSharp我的HTML渲染效果很差

时间:2019-07-10 19:34:42

标签: css vb.net html-renderer

我不完全知道问题出在哪里。我有一个带有内联CSS的html,我想将此html转换为pdf文件,但无法使其正常工作。这是我的代码:

Private Function PdfSharpConvert(html As String)
        Dim res() As Byte = New Byte() {}
        Using ms As New MemoryStream()
            Dim pdf = PdfGenerator.GeneratePdf(html, PdfSharp.PageSize.A4)
            pdf.Save(ms)
            res = ms.ToArray()
        End Using
        Return res
    End Function
    Public Sub DownloadPdf()
        Dim p = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Html", "AsginacionesSemanalesPdf.html")
        Dim s = File.ReadAllText(p)
        Dim a = PdfSharpConvert(s)

        File.WriteAllBytes("C:\Prueba\whatever.pdf", a)
    End Sub

这是我的HTML文件:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
</head>
<body>
<table style="width:100%;border-collapse:collapse" border="1">

  <tr style="border-collapse:collapse">
    <th colspan="3">Smart Academy</th>
    <th>11 AH</th> 
  </tr>
  <tr>
    <td style="width:5%;background-color:#003366;color:white">
        lunes
    </td>
    <td style="width:2%">
      <table style="width:100%;border-collapse:collapse" border="1">
         <tr><th>n</th></tr>
         <tr><th>1</th></tr>
         <tr><th>2</th></tr>
         <tr><th>3</th></tr>
         <tr><th>4</th></tr>
       </table>
    </td>
    <td style="width:43%">
        <table style="width:100%;border-collapse:collapse" border="1">
            <tr class="tabla"><th>Asignatura</th></tr>
            <tr><td>a</td></tr>
            <tr><td>a</td></tr>
            <tr><td>a</td></tr>
            <tr><td>a</td></tr>
        </table>
    </td>
    <td style="width:50%">
        <table style="width:100%;border-collapse:collapse" border="1">
            <tr style="background-color:#005c00;color:white"><th>Tipo de Evaluacion</th></tr>
            <tr><td>a</td></tr>
            <tr><td>a</td></tr>
            <tr><td>a</td></tr>
            <tr><td>a</td></tr>
        </table>
    </td>
  </tr>
</table>
</body>
</html>

我没有在互联网上找到太多文档,只是堆栈中和作者页面中的一些示例,如果你们中有任何更好的方式做到这一点,请告诉我,我不介意改用另一个pdf转换器。

这是它的外观: enter image description here

这是将html转换为pdf时的外观: enter image description here

0 个答案:

没有答案