`;
}
};
// --- PDF DOWNLOAD ---
const downloadPDF = () => {
const { jsPDF } = window.jspdf;
html2canvas(elements.pdfArea, { scale: 2, useCORS: true }).then(canvas => {
const imgData = canvas.toDataURL('image/png');
const pdf = new jsPDF({ orientation: 'p', unit: 'mm', format: 'a4' });
const pdfWidth = pdf.internal.pageSize.getWidth();
const pdfHeight = pdf.internal.pageSize.getHeight();
const ratio = canvas.width / canvas.height;
let imgWidth = pdfWidth - 20;
let imgHeight = imgWidth / ratio;
if (imgHeight > pdfHeight - 20) {
imgHeight = pdfHeight - 20;
imgWidth = imgHeight * ratio;
}
const x = (pdfWidth - imgWidth) / 2;
pdf.addImage(imgData, 'PNG', x, 10, imgWidth, imgHeight);
pdf.save('Daily-Water-Intake-Report.pdf');
}).catch(err => {
console.error("Error generating PDF:", err);
alert("Could not generate PDF. Please try again.");
});
};
elements.pdfBtn.addEventListener('click', downloadPDF);
});
