In Transform SWF 2.3.2, when displaying characters with a character code
of 16384 or more then an exception is thrown:
java.lang.ArrayIndexOutOfBoundsException: -3999
at com.flagstone.transform.util.FSTextConstructor.advancesForGlyphIndice
(Unknown Source)
at com.flagstone.transform.util.FSTextConstructor.defineText(Unknown
Source).
The problem is the use of short[] for the tables used to index the
glyphs. When a character code of 16384 or higher is stored in a table
and read back it is not bit-masked so the value gets sign-extended. The
result is that a negative value is used to index into the table
containing the advances for each character.
A patch has been uploaded for the ticket:
https://sourceforge.net/apps/trac/transform-swf/ticket/123
A new release will be posted at the end of April once one other issue
regarding the display of fonts on Mac OS X systems, see Ticket 124 has
been resolved.
--
Stuart MacKay
Flagstone Software Ltd.
|