我再次提出另一个Angular 2问题。
我们正在尝试从html源生成PDF文件。我搜索并搜索试图为jsPdf或makePdf库找到一个Angular 2包装器,但我找不到任何。有什么我想念的吗?有一个纯粹的JavaScript方式,这是一个好的做法?希望你们能帮忙。
提前致谢。
弗朗索瓦
答案 0 :(得分:2)
不需要包装器,只需包含脚本,然后通过window对象访问jsPDF。包装将使测试更容易。
我不记得确切,但我认为它是这样的:
var doc = new window.jsPDF();
答案 1 :(得分:1)
PDF是一种复杂的文件格式,可能有一些用js构建的pdf解析器/生成器,但它们将受到限制。慢,你最好的选择是做服务器端的事情。
答案 2 :(得分:0)
HTML code:
<button type="button" (click)="downloadPdf()"
class="button">download</button>
Component.ts:
downloadPdf(){
this.authService.downloadPdf().subscribe(data => {
this.partnerDetails = data
} ); }
routes.js:
router.get('/downloadPdf',partnerCntrl.downloadPdf);
partnercntrl:
module.exports.downloadPdf = function (req, res) {
var fs = require('fs');
var pdf = require('html-pdf');
var html = fs.readFileSync('./test/businesscard.html', 'utf8');
var options = { format: 'Letter' };
pdf.create(html, options).toFile('./businesscard.pdf', function(err, res) {
if (err) return console.log(err);
console.log(res); // { filename: '/app/businesscard.pdf' }
});