Рельсы HTML в PDF - PullRequest
       9

Рельсы HTML в PDF

3 голосов
/ 19 января 2012

Я пробовал PDFKit и wicked_pdf.

PDFKit почти привел меня туда, куда я хотел, но у него не было поддержки правила CSS, чтобы я мог зафиксировать нижний колонтитул внизу:

position: fixed;
bottom: 0;

Есть ли обходные пути, чтобы это исправить?

Поиск в Google не дает ничего, кроме других, таких как креветки и лайки без поддержки html.

Для тех, кто интересуется. wkhtmltopdf установлен и работает таким образом, PDFKit работает.

respond_to do |format|
  format.html {render :layout => nil}
  format.pdf do
    render :pdf => "file_name.pdf",

    :save_to_file => Rails.root.join('public/uploadedfiles', "filename")  
  end
end 

Ответы [ 4 ]

2 голосов
/ 20 января 2012

В CSS3 вы можете использовать правило @page для включения нижних колонтитулов следующим образом:

@page {
  @bottom-center {
    content: "foo";
  }
}

Это поддерживается во многих платных PDF-решениях, например PDFReactor и я думаю, принц.

Однако Webkit (на котором основан wkhtmltopdf) не поддерживает CSS3-правила для страничных носителей , поэтому вам нужен запасной вариант.

В документации Wicked PDF перечислены опции :footer, которые можно использовать для передачи фрагментов HTML для рендеринга на определенных страницах. Это выглядит как лучший вариант для вас.

0 голосов
/ 19 января 2012

Я действительно не уверен, почему вы хотите, чтобы элемент был зафиксирован в документе PDF, это действительно то, что вы хотите? Кроме того, оба гема используют wkhtmltopdf, утилиту, которая использует webkit для рендеринга html и в конечном итоге конвертирования его в pdf. Как только он отлично смотрится на webkit, он должен выглядеть как pdf. Но я не думаю, что pdf поддерживает элементы "fixed" как в CSS.

0 голосов
/ 20 января 2012

Я бы рекомендовал заглянуть в DocRaptor.По моему опыту, поддержка CSS лучше, чем в аналогичных программах.

DocRaptor

Вот ссылка на код для использования DocRaptor с Rails:

Пример DocRaptor Rails

0 голосов
/ 19 января 2012

Я не пробовал ни PDFKit, ни wicked_pdf, поэтому мне просто интересно.Но, возможно, это могло бы сработать.Вы пробовали использовать взломать Sticky Footer вместо этого?

http://ryanfait.com/sticky-footer/

...