【发布时间】:2018-03-12 15:41:11
【问题描述】:
处理 PDF 并且(在开发和生产中)PDF 将仅呈现封面:
https://www.patchvault.org/lodges/456a-powhatan/issues/checklist.pdf
Debug 显示其余内容,不包括封面页:
https://www.patchvault.org/lodges/456a-powhatan/issues/checklist.pdf?debug=true
这会间歇性地渲染良好,或者显示没有图像的后续页面(通常在渲染时),但大多数情况下它只是渲染封面。在控制器操作中禁用封面可以让其他页面按预期呈现。这是控制器操作(出于开发目的,我禁用了附件):
def checklist
# PDF Checklist of issues from a lodge
@issues = @issueable.issues.non_event_issues.ordered_issues
@event_issues = @issueable.issues.event_issues.order(issue_number: :asc)
respond_to do |format|
format.html
format.pdf do
render pdf: "#{@issueable.slug}_checklist",
# disposition: 'attachment',
template: 'issues/checklist.pdf.erb',
cover: render_to_string('issues/checklist_cover.pdf.erb'),
dpi: '150',
background: true,
header: {html: {template: 'layouts/_checklist_header'}, spacing: 5 },
footer: {html: {template: 'layouts/_checklist_footer'}, spacing: 0 },
margin: {top: 30, bottom: 20, left: 10, right: 10},
show_as_html: params.key?('debug')
end
end
end
这是 wkhtmltopdf 开发中的输出:
"***************[\"/Users/jathayde/Development/Meticulous/Products/patchvault/vendor/cache/ruby/2.4.0/gems/wkhtmltopdf-binary-0.12.3.1/bin/wkhtmltopdf\", \"-q\", \"--dpi\", \"150\", \"--margin-top\", \"30\", \"--margin-bottom\", \"20\", \"--margin-left\", \"10\", \"--margin-right\", \"10\", \"--header-spacing\", \"5\", \"--header-html\", \"file:////var/folders/25/q7y1f5px3xz8bw7sdzcyrz_c0000gn/T/wicked_header_pdf20180312-17436-12xyhl7.html\", \"--footer-spacing\", \"0\", \"--footer-html\", \"file:////var/folders/25/q7y1f5px3xz8bw7sdzcyrz_c0000gn/T/wicked_footer_pdf20180312-17436-eldx10.html\", \"cover\", \"/var/folders/25/q7y1f5px3xz8bw7sdzcyrz_c0000gn/T/wicked_cover_pdf20180312-17436-y1d6wy.html\", \"file:////var/folders/25/q7y1f5px3xz8bw7sdzcyrz_c0000gn/T/wicked_pdf20180312-17436-tr8hae.html\", \"/var/folders/25/q7y1f5px3xz8bw7sdzcyrz_c0000gn/T/wicked_pdf_generated_file20180312-17436-18ftq2q.pdf\"]***************"
封面是一个完整的 HTML 页面,因为它不会呈现样式,除非它是一个并调用 CSS 文件。
软件说明:
- Ruby 2.4.0p0
- Rails 5.1.5
- 补丁图像由 S3 提供。
- 宝石等被缓存到
vendor/cache
【问题讨论】:
标签: ruby-on-rails wkhtmltopdf wicked-pdf