feat: replace html2canvas with native high-quality browser printing

This commit is contained in:
2026-06-23 13:15:38 +00:00
parent a4a1c82acc
commit 189bf399dc
3 changed files with 43 additions and 26 deletions
+9 -9
View File
@@ -120,18 +120,17 @@ const App: React.FC = () => {
}, [handleReset]);
const handleExport = (action: 'preview' | 'download') => {
if (reportsData && reportsData.length > 0) {
const fileName = `Relatorio_SteelCheck_${reportsData[0].identification.certificateNumber || 'analise'}`;
exportAsPdf('printable-report-container', fileName, action);
}
// Both actions now use native high-quality browser printing/PDF saving
window.print();
};
return (
<div className="min-h-screen">
{isLoading && <Loader />}
<Header onReset={handleReset} onClearKey={handleClearKey} hasKey={hasKey} provider={provider} />
<div className="min-h-screen print:bg-white print:m-0 print:p-0">
<div className="print:hidden">
{isLoading && <Loader />}
<Header onReset={handleReset} onClearKey={handleClearKey} hasKey={hasKey} provider={provider} />
<main className="container mx-auto p-4 sm:p-6 md:p-8 max-w-7xl">
<main className="container mx-auto p-4 sm:p-6 md:p-8 max-w-7xl">
{!hasKey ? (
<ApiKeySetup onKeySave={handleKeySave} />
) : !reportsData ? (
@@ -199,9 +198,10 @@ const App: React.FC = () => {
</div>
)}
</main>
</div>
{reportsData && (
<div className="absolute -left-[9999px] top-0 opacity-0" aria-hidden="true">
<div className="hidden print:block print:w-[210mm] print:mx-auto" aria-hidden="true">
<PrintableReport reports={reportsData} />
</div>
)}