问题描述
我正在使用此https://www.npmjs.com/package/html2pdf.js/v/0.9.0
与
< script src="html2pdf.bundle.min.js"></script>
我想
- 打印表格,但如果表格太大而无法在页面之间拼接。已解决
- 在pdf末尾的底部放置#total。已解决
- 打印不适用于图像。
欢迎提供关于第1、2或3点的任何帮助。
英语不是我的主要语言,也许答案在npmjs页面上,但我很乐意接受任何指导
html:
<div id="ObjetivoPDF" style="display: none">
<div id="heady">
<div style="float: left">
<img id="LogoImagen" Height="50" width="120">
</div>
<h4 style="float:right;" id="DatosFactura"></h4>
</div>
<div id="data">
<table id="tablaDeCompras" class="table table-condensed table-hover" >
<thead>
<tr>
<th>Codigo</th>
<th>Cantidad</th>
<th>Descripcion</th>
<th>Costo</th>
<th>Subtotal</th>
</tr>
</thead>
<tbody id="ListaDDatos">
</tbody>
</table>
</div>
<div id="total" style="padding-top: " >
<h5>Total:<span id="totales"></span></h5>
</div>
</div>
js:
var opt = {
margin: 0.5,filename: 'myfile.pdf',image: { type: 'jpeg',quality: 0.98 },html2canvas: { scale: 3,letterRendering: true,},jsPDF: { unit: 'in',format: 'a3',orientation: 'portrait' }
//pagebreak: { mode: 'avoid-all',before: '#total' }
};
let element = document.getElementById('ObjetivoPDF').innerHTML;
html2pdf().set(opt).from(element).save().catch(err => {
document.getElementById("LogoImagen").style.display = "none";
element = document.getElementById('ObjetivoPDF');
console.log("intenta de nuevo sin imagen");
html2pdf().set(opt).from(element).save().then(function () {
}).catch(err => console.log(err));
});
- 解决方案
从原始页面:
只需摆动表的每40个条目
<div class="html2pdf__page-break"></div>
2)解决方案: //剩余数量是条目的数量。
numOfPages = Number(numOfPages);
if (numOfPages>1) {
let calculo = 1300 - ((restantes/40) * 1300);
alert(calculo)
document.getElementById("total").style.paddingTop = calculo +"px";
} else{
let calculo = 1200 - ((restantes/40) * 1200);
alert(calculo)
document.getElementById("total").style.paddingTop = calculo +"px";
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)