Author: lehmi
Date: Fri Mar 19 17:44:01 2010
New Revision: 925352
URL: http://svn.apache.org/viewvc?rev=925352&view=rev
Log:
PDFBOX-624: Fixed the calculation of the charstring number encoding. Patch by
Villu Ruusmann (villu dot ruusmann at gmail dot com)
Modified:
pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/CharStringConverter.java
pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type2CharStringParser.java
Modified:
pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/CharStringConverter.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/CharStringConverter.java?rev=925352&r1=925351&r2=925352&view=diff
==============================================================================
---
pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/CharStringConverter.java
(original)
+++
pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/CharStringConverter.java
Fri Mar 19 17:44:01 2010
@@ -22,7 +22,7 @@ import java.util.Collections;
import java.util.List;
/**
- * A class to convert for a sequence of Type1/Type2 commands into a sequence
of CharStringCommands.
+ * A class to translate Type2 CharString command sequence to Type1 CharString
command sequence.
*
* @author Villu Ruusmann
* @version $Revision$
Modified:
pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type2CharStringParser.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type2CharStringParser.java?rev=925352&r1=925351&r2=925352&view=diff
==============================================================================
---
pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type2CharStringParser.java
(original)
+++
pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cff/Type2CharStringParser.java
Fri Mar 19 17:44:01 2010
@@ -144,8 +144,9 @@ public class Type2CharStringParser
int b3 = input.readUnsignedByte();
int b4 = input.readUnsignedByte();
- return Integer
- .valueOf((short) (b1 << 24 | b2 << 16 | b3 << 8 | b4));
+ // The lower bytes are representing the digits after
+ // the decimal point and aren't needed in this context
+ return Integer.valueOf((short)(b1 << 8 | b2));
}
else
{
@@ -188,4 +189,4 @@ public class Type2CharStringParser
return numbers;
}
-}
\ No newline at end of file
+}