6

我使用了这些设置

WickedPdf::config = {
    :layout           => 'application.pdf.html', # use 'pdf.html' for a pfd.html.erb file
    :wkhtmltopdf      => '/bin/wkhtmltopdf', # path to binary
    :orientation      => 'Portrait', # default , Landscape
    :page_size        => 'A4',
    :dpi              => '300',
    :print_media_type => true,
    :no_background    => true,
    :margin           => {:top    => 0, # default 10 (mm)
                          :bottom => 0,
                          :left   => 0,
                          :right  => 0},

}

并将正文样式设置为

body {
    margin: 0;
    padding: 0;
    background-color: #FFF;
    width: 210mm;
    height: 297mm;
}

和一个 .page 类的 div

.page {
    display: inline-block;
    clear: both;
    border: 2px solid #FF0000;
    width: 210mm;
    height: 297mm;
    page-break-after: auto;
}

但是当创建 pdf 时,.page div 几乎是 pdf 页面的一半。

4

2 回答 2

3

如果您正在浮动页面容器,那么它将无法正常工作。我遇到了完全相同的问题,一旦我移除了浮动专业版。

所以你的页面容器应该是:

.page {
display: block;
clear: both;
border: 2px solid #FF0000;
page-break-after: auto;}

因为inline-block它就像漂浮它离开。

于 2011-11-09T13:51:54.747 回答
1

尝试放入你的CSS

@media print
    { .page {
    display: inline-block;
    clear: both;
    border: 2px solid #FF0000;
    width: 210mm;
    height: 297mm;
    page-break-after: auto;
 }
}

media="all"如果您引用外部样式表,还要确保添加:

<link href="/stylesheets/scaffold.css?1304060088"
      media="all" rel="stylesheet" type="text/css">
于 2011-05-02T18:21:42.607 回答