From 480038004588edd8e546d1507b3dd16548a0da9a Mon Sep 17 00:00:00 2001 From: Sukma Gladys Date: Mon, 11 Nov 2024 14:29:31 +0700 Subject: [PATCH] fix: pdf layout adjustment --- .../assessmentResult/index.lazy.tsx | 27 ++++++------------- 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/apps/frontend/src/routes/_dashboardLayout/assessmentResult/index.lazy.tsx b/apps/frontend/src/routes/_dashboardLayout/assessmentResult/index.lazy.tsx index 23b1c25..dda4db3 100644 --- a/apps/frontend/src/routes/_dashboardLayout/assessmentResult/index.lazy.tsx +++ b/apps/frontend/src/routes/_dashboardLayout/assessmentResult/index.lazy.tsx @@ -362,36 +362,29 @@ export default function AssessmentResultPage() { const handlePrintPDF = async (isSuperAdmin: boolean) => { const pdfContainer = document.getElementById("pdfContainer"); - const targetCard = document.getElementById("target-card"); - const barChart = document.getElementById("bar-chart"); - if (pdfContainer && targetCard && barChart) { + if (pdfContainer) { // Sembunyikan elemen yang tidak ingin dicetak const buttonPrint = document.getElementById("button-print"); const noPrint = document.getElementById("no-print"); if (buttonPrint) buttonPrint.style.visibility = 'hidden'; if (noPrint) noPrint.style.visibility = 'hidden'; - // Tentukan marginTop sesuai dengan isSuperAdmin - const originalMarginTop = targetCard.style.marginTop || "0px"; - targetCard.style.marginTop = isSuperAdmin ? "190px" : "0px"; - - // Tentukan marginTop sesuai dengan isSuperAdmin - const originalBarChart = barChart.style.marginTop || "0px"; - barChart.style.marginTop = isSuperAdmin ? "0px" : "150px"; + const pdfMargin = isSuperAdmin ? [10, 10, 10, -220] : [10, 10, 10, -230]; + const pdfWidth = isSuperAdmin ? 1575 : 1550; const options = { - margin: [0, 0.5, 0, 0], + margin: pdfMargin, image: { type: 'jpeg', quality: 0.98 }, html2canvas: { scale: 2, - width: pdfContainer.scrollWidth, - height: pdfContainer.scrollHeight, + width: pdfWidth, // Lebar tetap untuk ukuran A4 (landscape) + height: pdfContainer.scrollHeight, // Tinggi dinamis sesuai konten }, jsPDF: { - unit: 'in', + unit: 'pt', format: 'a4', - orientation: 'landscape', + orientation: 'portrait', } }; @@ -416,10 +409,6 @@ export default function AssessmentResultPage() { // Tampilkan kembali elemen yang disembunyikan if (buttonPrint) buttonPrint.style.visibility = 'visible'; if (noPrint) noPrint.style.visibility = 'visible'; - - // Reset marginTop ke nilai aslinya - targetCard.style.marginTop = originalMarginTop || "0px"; - barChart.style.marginTop = originalBarChart || "0px"; } } };