Details
-
Bug
-
Status: Closed
-
Resolution: Fixed
-
1.0
-
None
-
None
-
Operating System: Linux
Platform: PC
-
51530
Description
Some double byte characters aren't being written correctly to an AFP document. These are specifically EBCDIC encoded double byte fonts, as the java.nio.CharsetEncoder prepends and appends the "Shift Out Shift In" operators (0x0E and 0x0F respectively) to the byte array.
These are line data commands used for shifting between single and double byte encodings and not necessary in AFP. The result being that the characters aren't encoded correctly.
These need to be removed, however, there's no "fool proof" way of distinguishing between an EBCDIC DBCS (double byte character set) and other DBCSs. Thus I have implemented an optional attribute "ebcdic-dbcs" to remove these 0x0E and 0x0F operators.
I've tested this here, but can't provide an EBCDIC encoded DBCS due to licensing issues.