Author: lehmi
Date: Sun Jul 5 10:21:10 2026
New Revision: 1935909
Log:
PDFBOX-6216: skip fonts using CFF2 outlines as they are not supported
Modified:
pdfbox/branches/3.0/fontbox/src/main/java/org/apache/fontbox/ttf/TTFParser.java
Modified:
pdfbox/branches/3.0/fontbox/src/main/java/org/apache/fontbox/ttf/TTFParser.java
==============================================================================
---
pdfbox/branches/3.0/fontbox/src/main/java/org/apache/fontbox/ttf/TTFParser.java
Sun Jul 5 10:17:09 2026 (r1935908)
+++
pdfbox/branches/3.0/fontbox/src/main/java/org/apache/fontbox/ttf/TTFParser.java
Sun Jul 5 10:21:10 2026 (r1935909)
@@ -273,14 +273,19 @@ public class TTFParser
// panose = os2WindowsMetricsTable.getPanose();
outHeaders.setOs2Windows(font.getOS2Windows());
- boolean isOTFAndPostScript;
+ boolean isOTFAndPostScript = false;
if (font instanceof OpenTypeFont && ((OpenTypeFont)
font).isPostScript())
{
- isOTFAndPostScript = true;
if (((OpenTypeFont) font).isSupportedOTF())
{
+ isOTFAndPostScript = true;
font.readTableHeaders(CFFTable.TAG, outHeaders); // calls
CFFTable.readHeaders();
}
+ else
+ {
+ outHeaders.setError("OpenType fonts using CFF2 outlines
are not supported");
+ return outHeaders;
+ }
}
else if (!(font instanceof OpenTypeFont) &&
font.tables.containsKey(CFFTable.TAG))
{
@@ -289,7 +294,6 @@ public class TTFParser
}
else
{
- isOTFAndPostScript = false;
TTFTable gcid = font.getTableMap().get("gcid");
if (gcid != null && gcid.getLength() >= FontHeaders.BYTES_GCID)
{