Я хочу сделать pdf текущей страницы, чтобы пользователь мог распечатать ее, но каждая страница динамична, поэтому мне потребуется своего рода генератор текста в pdf, чтобы он работал.
Это приложение ionic2, оно похоже на страницу рецептов, так что вы можете нажать на кнопку, и оно просто делает PDF из текста.
Ребята, вы знаете, как мне этого добиться?
2 ответа
Ваша лучшая ставка, вероятно, это плагин:
https://github.com/cesarvr/pdf-generator
Присвойте разделу динамической страницы идентификатор типа «pdf-area», а затем выберите его в своем файле .ts следующим образом:
let content = document.getElementById('pdf-area').innerHTML
Затем вы можете превратить это в файл или распечатать его так
cordova.plugins.pdf.htmlToPDF({
data: content,
type: "base64"
},
(success) => {
// you might have to turn the base64 into a binary blob to save it
// to a file at this point
},
(error) => console.log('error:', error);
);
}
Поместите ваш html в папку assets и укажите путь 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);
});
}
Похожие вопросы
Новые вопросы
html
HTML (язык разметки гипертекста) - это язык разметки для создания веб-страниц и другой информации, отображаемой в веб-браузере. Вопросы, касающиеся HTML, должны включать минимальный воспроизводимый пример и некоторое представление о том, чего вы пытаетесь достичь. Этот тег редко используется отдельно и часто используется вместе с [CSS] и [javascript].