我想制作当前页面的pdf,以便用户可以打印出来但每个页面都是动态的,所以我需要一种文本到pdf生成器才能使它工作。
它是一个ionic2应用程序,用于配方页面,因此您可以单击按钮,它只是从文本中生成pdf。
你们知道我是如何做到的吗?
答案 0 :(得分:3)
你最好的选择可能是这个插件:
https://github.com/cesarvr/pdf-generator
为您的动态页面部分添加一个类似于< pdf-area'然后在.ts文件中选择它,如下所示:
Georgioss-MacBook-Pro:~ gsamaras$ gcc -v
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 8.1.0 (clang-802.0.38)
Target: x86_64-apple-darwin16.3.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
然后您可以将其转换为文件或像这样打印
let content = document.getElementById('pdf-area').innerHTML
答案 1 :(得分:0)
将您的html放在资产文件夹中,并给出这样的html路径。
在我的情况下,此路径有效: var file ='file:///android_asset/www/assets/lolc.html';
generatePdf(){
const before = Date.now();
document.addEventListener('deviceready', () => {
console.log('DEVICE READY FIRED AFTER', (Date.now() - before), 'ms');
var file = 'file:///android_asset/www/assets/lolc.html';
cordova.plugins.pdf.fromURL(file,{
documentSize: "A4",
landscape: "portrait",
type: "share"
}),
(sucess) => console.log('sucess: ', sucess),
(error) => console.log('error:', error);
});
}