diff --git a/lib/pdf-business-card.tsx b/lib/pdf-business-card.tsx index 19317a3c..0ef48b13 100644 --- a/lib/pdf-business-card.tsx +++ b/lib/pdf-business-card.tsx @@ -366,17 +366,29 @@ const VectorLogo = ({ overrideColor, overrideWhiteColor, pathOverrides, + solidPaths, }: { paths: { d: string; fill: string }[]; style: any; overrideColor?: string; overrideWhiteColor?: string; pathOverrides?: Record; + solidPaths?: number[]; }) => ( {paths.map((p, i) => { let fill = overrideColor || p.fill; + let d = p.d; + + if (solidPaths && solidPaths.includes(i)) { + // Keep only the first subpath to make the shape solid (remove holes) + const zIndex = d.toUpperCase().indexOf('Z'); + if (zIndex !== -1) { + d = d.substring(0, zIndex + 1); + } + } + if (pathOverrides && pathOverrides[i]) { fill = pathOverrides[i]; } else if ( @@ -385,7 +397,7 @@ const VectorLogo = ({ ) { fill = overrideWhiteColor; } - return ; + return ; })} @@ -786,6 +798,7 @@ export const PDFBusinessCard: React.FC = ({ paths={getFrontLogoPaths()} style={styles.frontLogo} pathOverrides={KLZ_PATHS.reduce((acc, idx) => ({ ...acc, [idx]: COLORS.blue }), {})} + solidPaths={KLZ_PATHS} /> {/* Letterpress Mask Layer: We use #ff00fe as a marker color. Only the "KLZ" letters! */} @@ -793,6 +806,7 @@ export const PDFBusinessCard: React.FC = ({ paths={getFrontLogoPaths().filter((_, i) => KLZ_PATHS.includes(i))} style={[styles.frontLogo, { position: 'absolute' }]} overrideColor="#ff00fe" + solidPaths={KLZ_PATHS.map((_, i) => i)} /> @@ -805,6 +819,7 @@ export const PDFBusinessCard: React.FC = ({ paths={getBackLogoPaths()} style={styles.backLogo} overrideWhiteColor={COLORS.primary} + solidPaths={KLZ_PATHS} /> diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich.pdf index d4094586..49a468fb 100644 Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich.pdf differ diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_Viaprinto_CMYK_91x61mm_3mmBleed.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_Viaprinto_CMYK_91x61mm_3mmBleed.pdf new file mode 100644 index 00000000..0fae33c8 Binary files /dev/null and b/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_Viaprinto_CMYK_91x61mm_3mmBleed.pdf differ diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel.pdf index afc417f6..50eb5c7b 100644 Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel.pdf differ diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_Viaprinto_CMYK_91x61mm_3mmBleed.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_Viaprinto_CMYK_91x61mm_3mmBleed.pdf new file mode 100644 index 00000000..f27502f0 Binary files /dev/null and b/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_Viaprinto_CMYK_91x61mm_3mmBleed.pdf differ diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer.pdf index 6b452bcb..c720d5d2 100644 Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer.pdf differ diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_Viaprinto_CMYK_91x61mm_3mmBleed.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_Viaprinto_CMYK_91x61mm_3mmBleed.pdf new file mode 100644 index 00000000..a2eb90d8 Binary files /dev/null and b/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_Viaprinto_CMYK_91x61mm_3mmBleed.pdf differ diff --git a/scripts/generate-business-cards.ts b/scripts/generate-business-cards.ts index 85f07332..927e795c 100644 --- a/scripts/generate-business-cards.ts +++ b/scripts/generate-business-cards.ts @@ -95,7 +95,7 @@ END:VCARD`; console.log(`✓ Final Print File generated (Fonts to Paths, RGB preserved): ${finalFileName}`); // Convert to CMYK for Viaprinto - const finalFileNameCMYK = `KLZ_Visitenkarte_${safeName}_Viaprinto_CMYK.pdf`; + const finalFileNameCMYK = `KLZ_Visitenkarte_${safeName}_Viaprinto_CMYK_91x61mm_3mmBleed.pdf`; const finalPathCMYK = path.join(CONFIG.outputDir, finalFileNameCMYK); console.log(`- Converting to CMYK for Viaprinto...`);