You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by le...@apache.org on 2024/12/16 19:10:56 UTC
svn commit: r1922540 - /pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CMapStrings.java
Author: lehmi
Date: Mon Dec 16 19:10:56 2024
New Revision: 1922540
URL: http://svn.apache.org/viewvc?rev=1922540&view=rev
Log:
PDFBOX-5902: replace Map with List
Modified:
pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CMapStrings.java
Modified: pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CMapStrings.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CMapStrings.java?rev=1922540&r1=1922539&r2=1922540&view=diff
==============================================================================
--- pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CMapStrings.java (original)
+++ pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CMapStrings.java Mon Dec 16 19:10:56 2024
@@ -18,8 +18,8 @@
package org.apache.fontbox.cmap;
import java.nio.charset.StandardCharsets;
-import java.util.HashMap;
-import java.util.Map;
+import java.util.ArrayList;
+import java.util.List;
/**
* Many CMaps are using the same values for the mapped strings. This class provides all common one- and two-byte
@@ -27,8 +27,8 @@ import java.util.Map;
*/
public class CMapStrings
{
- private static final Map<Integer, String> twoByteMappings = new HashMap<>();
- private static final Map<Integer, String> oneByteMappings = new HashMap<>();
+ private static final List<String> twoByteMappings = new ArrayList<>(256 * 256);
+ private static final List<String> oneByteMappings = new ArrayList<>(256);
static
{
@@ -47,14 +47,13 @@ public class CMapStrings
for (int j = 0; j < 256; j++)
{
byte[] bytes = { (byte) i, (byte) j };
- twoByteMappings.put(CMap.toInt(bytes),
- new String(bytes, StandardCharsets.UTF_16BE));
+ twoByteMappings.add(new String(bytes, StandardCharsets.UTF_16BE));
}
}
for (int i = 0; i < 256; i++)
{
byte[] bytes = { (byte) i };
- oneByteMappings.put(i, new String(bytes, StandardCharsets.ISO_8859_1));
+ oneByteMappings.add(new String(bytes, StandardCharsets.ISO_8859_1));
}
}