【问题标题】:convert html to pdf - page break splits text将 html 转换为 pdf - 分页符拆分文本
【发布时间】:2019-06-15 22:10:10
【问题描述】:

我尝试使用 pdflayer.com 的 api 从 HTML/CSS 文档生成 PDF 文件。到目前为止,一切都很好。一切正常。但是有一个问题。如果有分页符,有时会像照片中那样分割一行:

有没有办法解决这个问题?我也试过 html2pdfrocket.com 那里是一样的。

文本被放置在这个 html 结构中:

<html>
 <body>
  <div class="overall">
   <div class="content">
    <div class="wrapper">
     <div class="article">
      Text

【问题讨论】:

  • 我建议您附上重现问题所需的完整 HTML/CSS。
  • html2canvas.hertzen.com 这将拍摄正确的快照。
  • 如果可能的话,能否请您提供一个指向您的 HTML 的链接。否则你也可以试试WKHTMLToPDF。我发现这在大多数情况下都对我有用。

标签: html css pdf html2pdf html-to-pdf


【解决方案1】:

您可以尝试使用Syncfusion 在线demo 将您的HTML 转换为PDF。我们正在处理跨页面拆分的文本和图像。

注意:我为 Syncfusion 工作。

【讨论】:

    【解决方案2】:

    我发现编译多个 div 内的内容存在问题。 CSS 规则不影响问题的行为。

    所以我有了一个想法,我所做的就是生成一个“raw-html-output”。在这个html文档中只有

    <html>
     <head>
      <style>
       The only necessary css-rules.
      </style>
     </head>
     <body>
      Some text here.
     </body>
    </html>
    

    仅此而已。

    API 从简单的 html 文件中抓取数据并很好地编译它们。

    【讨论】:

      【解决方案3】:

      我认为最好的解决方案是防止打印段落中出现中断。 像这样的:

      @media print and (min-width:700px) {
          /* you can change the selector to whatever you need */
          .article {
              break-inside: avoid;
              page-break-inside: avoid;
          }
      }
      

      【讨论】:

      • 我刚试了一下,添加这些行没有效果。
      • 您是否调整(甚至删除)min-width 并使用正确的类?
      【解决方案4】:

      如果您使用 firefox,请使用它打开 html 文档并安装名为 PDF Mage 的附加组件。只需单击图标即可将页面转换为 PDF。 它总是对我有用,没有任何问题。

      Viele Grüße

      【讨论】:

      • 这不是我要找的。我想要的是,当我更新一篇文章时,它会自动生成 PDF。
      猜你喜欢
      • 2018-04-06
      • 2012-07-02
      • 2019-04-09
      • 1970-01-01
      • 1970-01-01
      • 2017-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多