如何将样式化的DIV保存为PDF

时间:2015-09-24 14:09:20

标签: javascript jquery html pdf-generation css-to-pdf

您有没有办法使用Javascript或HTML将样式DIV保存为PDF?

我有一个风格的DIV,我希望能够将其保存为PDF,只需点击一下按钮,我也希望它能保持它的风格。

如何做到这一点?

由于

    <style>
    .spOutputbox {
        margin: 5px 0 0 40px;
        padding: 10px;
        width: 378px;
        height: 568px;
        border-radius: 5px;
        font-size: 15px;
        color: #333;
        box-shadow: 0 1px 5px rgba(0,0,0,0.25);
        background: #f5f5f5;
        text-align: center;
        float: left;
    }
    .outline {
        border: 1px dotted #000;
    }
    .spOutputbox .ribbon {
        margin-top: 20px;
        width: 100%;
        height: 40px;
        border-top: 1px dotted #000;
        border-bottom: 1px dotted #000;
    }
    .spOutputbox .tableTitle {
        margin: 30px 0;
        font-size: 30px;
        font-weight: normal;
    }
    .spOutputbox .pname {
        margin: 10px 0;
        font-size: 18px;
        font-weight: normal;
    }
    </style>

    <div class="spOutputbox">
        <div class="outline">
           <div class="ribbon"></div>
           <div class="spContent">
           <div class="tableTitle">Table 1</div>
           <div class="pname">Name 1</div>
           <div class="pname">Name 2</div>
           <div class="pname">Name 3</div>
           <div class="pname">Name 4</div>
        </div>
    </div>
    <button id="makepd">generate PDF</button>

1 个答案:

答案 0 :(得分:0)

也许Html2Canvas可以帮到你:

使用这个库你应该能够在画布中转换div, 然后,使用像示例的代码:

var imgData = canvas.toDataURL('image/jpeg');
var doc = new jsPDF('landscape');

doc.addImage(imgData, 'JPEG', 15, 40, 180, 180);
doc.save('sample-file.pdf');

将div保存为pdf上的图像

有关详细信息,请查看this jsPDF post