name type encoding emb sub uni object ID ----------------- ------------ ---------- --- --- --- --------- F1 CID Type0C Identity-H yes yes yes 4 0 F2 CID Type0C Identity-H yes yes yes 5 0 F3 CID TrueType Identity-H yes yes yes 6 0 F4 CID Type0C Identity-H yes yes yes 7 0 All fonts are embedded subsets but anonymized as F1–F4. gs -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pdfwrite \ -dCompatibilityLevel=1.7 \ -dPDFSETTINGS=/prepress \ -dSubsetFonts=false \ -dEmbedAllFonts=true \ -sOutputFile=repaired_catalog.pdf \ broken_catalog.pdf Step 3: Verify the Result Run pdffonts repaired_catalog.pdf again:
Ghostscript can "refry" the PDF, resolving F1–F4 aliases.
A: The naming extends as needed. F1 to F4 is common, but any digit is possible. cid font f1 f2 f3 f4 repack
// iText 7 example - Force full CID embedding PdfFontFactory.FontEncodeing = PdfEncodings.IDENTITY_H font.setSubset(false); Doing so ensures your PDF will never need a repack in the future. Q: Is repacking the same as flattening? A: No. Flattening merges transparent objects; repacking fixes font structures. They are complementary.
| Issue | Symptom | |-------|---------| | | Text appears as dots, boxes, or random characters | | Editing in Illustrator/Inkscape | "Font F1 not available" error | | Text extraction | Copy-paste yields scrambled output | | Print RIP failure | PS error: "Undefined font" | | PDF/A compliance | Validation fails due to incomplete font embedding | name type encoding emb sub uni object ID
A: Yes, using online services like iLovePDF or PDF2Go, but be cautious with sensitive documents.
A: No—if done correctly, repacking preserves or even improves text extraction. F1 to F4 is common, but any digit is possible
A: Usually no, because you are re-embedding glyphs already present. However, converting to outlines may strip embedding rights; check your EULA. Conclusion: Repack to Take Control of Your PDFs The CID Font F1 F2 F3 F4 repack is an essential skill for anyone working with PDFs in prepress, archiving, or multilingual documentation. Those cryptic F1 errors are not a sign of permanent corruption—they are simply an alias convention that needs resolution.