创建 pdf 并将其转换为 base64
creating a pdf and converting it to base64
我正在努力寻找一种方法来获取 HTML 页面并将其转换为 pdf,然后将该 pdf 转换为 base64。
具体来说,我正在制作一个客户端网页,用户可以在其中填写有关发票的信息,然后单击“发送电子邮件”按钮,此按钮应获取整个发票页面并将其转换为 pdf .然后我需要使用 emailjs 将 pdf 发送给客户。据我了解,emailjs 要求附件采用 base64 格式,因此我认为我需要将 pdf 转换为 base64 才能附加它。
所有这些都需要在客户端使用 vanilla js 完成。非常感谢任何关于如何实现此目的的想法或示例!
我从不使用 Emailjs 但也许这就是你的 pdf 文件的解决方案
const toBase64 = file => new Promise((resolve, reject) => {
const reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = () => resolve(reader.result);
reader.onerror = error => reject(error);
});
async function Main() {
const file = document.querySelector('#myfile').files[0];
const result = await toBase64(file).catch(e => Error(e));
if(result instanceof Error) {
console.log('Error: ', result.message);
return;
}
Main();
我正在努力寻找一种方法来获取 HTML 页面并将其转换为 pdf,然后将该 pdf 转换为 base64。
具体来说,我正在制作一个客户端网页,用户可以在其中填写有关发票的信息,然后单击“发送电子邮件”按钮,此按钮应获取整个发票页面并将其转换为 pdf .然后我需要使用 emailjs 将 pdf 发送给客户。据我了解,emailjs 要求附件采用 base64 格式,因此我认为我需要将 pdf 转换为 base64 才能附加它。
所有这些都需要在客户端使用 vanilla js 完成。非常感谢任何关于如何实现此目的的想法或示例!
我从不使用 Emailjs 但也许这就是你的 pdf 文件的解决方案
const toBase64 = file => new Promise((resolve, reject) => {
const reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = () => resolve(reader.result);
reader.onerror = error => reject(error);
});
async function Main() {
const file = document.querySelector('#myfile').files[0];
const result = await toBase64(file).catch(e => Error(e));
if(result instanceof Error) {
console.log('Error: ', result.message);
return;
}
Main();