You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2024/11/27 14:59:59 UTC
svn commit: r1922165 - /pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDFont.java
Author: tilman
Date: Wed Nov 27 14:59:58 2024
New Revision: 1922165
URL: http://svn.apache.org/viewvc?rev=1922165&view=rev
Log:
PDFBOX-5384: use workaround from PDF.js
Modified:
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDFont.java
Modified: pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDFont.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDFont.java?rev=1922165&r1=1922164&r2=1922165&view=diff
==============================================================================
--- pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDFont.java (original)
+++ pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDFont.java Wed Nov 27 14:59:58 2024
@@ -144,7 +144,13 @@ public abstract class PDFont implements
cmap = readCMap(toUnicode);
if (cmap != null && !cmap.hasUnicodeMappings())
{
- LOG.warn("Invalid ToUnicode CMap in font " + getName());
+ String name = getName();
+ LOG.warn("Invalid ToUnicode CMap in font " + name);
+ if (name != null && (name.startsWith("Tahoma") || name.startsWith("Verdana")))
+ {
+ // PDFBOX-5384: workaround inspired by PDF.js 15719 and 11242
+ return null;
+ }
String cmapName = cmap.getName() != null ? cmap.getName() : "";
String ordering = cmap.getOrdering() != null ? cmap.getOrdering() : "";
COSName encoding = dict.getCOSName(COSName.ENCODING);