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 2022/05/05 17:56:55 UTC
svn commit: r1900598 - in /pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff: CharStringHandler.java Type1CharString.java Type2CharString.java
Author: lehmi
Date: Thu May 5 17:56:55 2022
New Revision: 1900598
URL: http://svn.apache.org/viewvc?rev=1900598&view=rev
Log:
PDFBOX-5143: revert changes from r1900577
Added:
pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/CharStringHandler.java
- copied unchanged from r1900576, pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/CharStringHandler.java
Modified:
pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type1CharString.java
pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type2CharString.java
Modified: pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type1CharString.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type1CharString.java?rev=1900598&r1=1900597&r2=1900598&view=diff
==============================================================================
--- pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type1CharString.java (original)
+++ pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type1CharString.java Thu May 5 17:56:55 2022
@@ -154,39 +154,11 @@ public class Type1CharString
path = new GeneralPath();
leftSideBearing = new Point2D.Float(0, 0);
width = 0;
- handleSequence(type1Sequence);
+ CharStringHandler handler = Type1CharString.this::handleType1Command;
+ handler.handleSequence(type1Sequence);
}
- /**
- * Process sequence of char string commands.
- *
- * @param sequence the given char string sequence
- */
- protected void handleSequence(List<Object> sequence)
- {
- List<Number> numbers = new ArrayList<>();
- sequence.forEach(obj -> {
- if (obj instanceof CharStringCommand)
- {
- List<Number> results = handleCommand(numbers, (CharStringCommand) obj);
- numbers.clear();
- numbers.addAll(results);
- }
- else
- {
- numbers.add((Number) obj);
- }
- });
- }
-
- /**
- * Handle the given char string command.
- *
- * @param numbers numbers to be used as parameters for the char string command
- * @param command the char string command
- * @return the result of the calculation or an empty list if the command doesn't have a result
- */
- protected List<Number> handleCommand(List<Number> numbers, CharStringCommand command)
+ private List<Number> handleType1Command(List<Number> numbers, CharStringCommand command)
{
commandCount++;
Type1KeyWord type1KeyWord = command.getType1KeyWord();
Modified: pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type2CharString.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type2CharString.java?rev=1900598&r1=1900597&r2=1900598&view=diff
==============================================================================
--- pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type2CharString.java (original)
+++ pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type2CharString.java Thu May 5 17:56:55 2022
@@ -73,11 +73,11 @@ public class Type2CharString extends Typ
{
type1Sequence = new ArrayList<>();
pathCount = 0;
- handleSequence(sequence);
+ CharStringHandler handler = Type2CharString.this::handleType2Command;
+ handler.handleSequence(sequence);
}
- @Override
- protected List<Number> handleCommand(List<Number> numbers, CharStringCommand command)
+ private List<Number> handleType2Command(List<Number> numbers, CharStringCommand command)
{
commandCount++;
Type2KeyWord type2KeyWord = command.getType2KeyWord();