2015-05-07 6 views
4

У меня возникли некоторые проблемы с получением PDF-файлов из html с Rails. Я попытался использовать PDFKit и Wicked_PDF драгоценных камней, с которыми у меня была проблема с разрывом страницы, они ломаются внутри <tr>.Rails генерирует PDF из html

Позвольте мне показать вам, что я делаю с Wicked_PDF:

В моем контроллере:

render pdf: "report", 
     :template => "reports/index.html.erb", 
     :layout => "pdf", 
     :orientation => 'Landscape', 
     footer: { 
     right: "Page [page] of [topage]", 
     font_size: 9 
     } 

макетов/pdf.html.erb:

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"> 

    <style> 
     .table { 
      border-bottom: 1px solid #ddd; 
      border-collapse: collapse; 
      border-spacing: 0; 
      margin-bottom: 20px; 
      width: 100%; 
     } 

     td, 
     th { 
      border-top: 1px solid #ddd; 
      padding: 2px; 
      text-align: left; 
      vertical-align: middle; 
     } 

     .table > thead th { 
      background: #f7f7f7; 
     } 
    </style> 
</head> 

<body> 

<%= yield %> 

</body> 
</html> 

отчетов/индекс. html.erb:

<table class="table"> 
    <thead> 
    <tr>Example of a text that breaks the tr</tr> 
    </thead> 
    <tbody> 
    <% 3.times do %> 
     <tr> 
     <td><%= "string " * 500 %></td> 
     </tr> 
    <% end %> 
    </tbody> 
</table> 

Также пытался использовать этот CSS свойство:

tr, td, th, tbody, thead, tfoot { 
    page-break-inside: avoid !important; 
} 

Примечание: Я думаю, что это не будет иметь значение, чтобы показать, что я сделал с PDFKit, так как HTML и CSS не меняется, только так, как это и проблема точно такая же.

Что я пропустил?

Решения с другими драгоценными камнями также приветствуются.

ответ

0

Для PDFkit вы также можете использовать это свойство

.table{ 
 
    tr{ 
 
    page-break-before: always !important; 
 
    } 
 
}

Вы также можете попробовать кучу обходные упомянул here

+0

Мне очень жаль, не получилось. –

+0

@ RuiSchnaiderJúnior Какую версию библиотеки wkhtmltopdf вы используете? Разрывы страниц являются известной проблемой для более старых версий. –

+0

версия wkhtmltopdf-0.12.2.1-1.fc20.x86_64. –

 Смежные вопросы

  • Нет связанных вопросов^_^