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 2022/06/12 08:23:42 UTC

svn commit: r1901840 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDAbstractContentStream.java

Author: tilman
Date: Sun Jun 12 08:23:42 2022
New Revision: 1901840

URL: http://svn.apache.org/viewvc?rev=1901840&view=rev
Log:
PDFBOX-4892: optimize, as suggested by Valery Bokov

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDAbstractContentStream.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDAbstractContentStream.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDAbstractContentStream.java?rev=1901840&r1=1901839&r2=1901840&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDAbstractContentStream.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDAbstractContentStream.java Sun Jun 12 08:23:42 2022
@@ -1633,11 +1633,12 @@ abstract class PDAbstractContentStream i
 
     private List<Integer> applyGSUBRules(GsubWorker gsubWorker, ByteArrayOutputStream out, PDType0Font font, String word) throws IOException
     {
-        List<Integer> originalGlyphIds = new ArrayList<>();
+        char[] charArray = word.toCharArray();
+        List<Integer> originalGlyphIds = new ArrayList<>(charArray.length);
         CmapLookup cmapLookup = font.getCmapLookup();
 
         // convert characters into glyphIds
-        for (char unicodeChar : word.toCharArray())
+        for (char unicodeChar : charArray)
         {
             int glyphId = cmapLookup.getGlyphId(unicodeChar);
             if (glyphId <= 0)