Author: gadams
Date: Sat Apr 21 04:03:58 2012
New Revision: 1328579

URL: http://svn.apache.org/viewvc?rev=1328579&view=rev
Log:
Bugzilla #50492: Removing experimental feature that violates XSL-FO and Unicode 
semantics by misinterpreting Basic Latin code points. Users must use private 
use codepoints to access font specific character mappings that have no assigned 
Unicode code point.

Modified:
    xmlgraphics/fop/trunk/src/java/org/apache/fop/fonts/truetype/TTFFile.java
    xmlgraphics/fop/trunk/status.xml

Modified: 
xmlgraphics/fop/trunk/src/java/org/apache/fop/fonts/truetype/TTFFile.java
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fonts/truetype/TTFFile.java?rev=1328579&r1=1328578&r2=1328579&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/fonts/truetype/TTFFile.java 
(original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/fonts/truetype/TTFFile.java 
Sat Apr 21 04:03:58 2012
@@ -420,6 +420,19 @@ public class TTFFile {
                             unicodeMappings.add(new UnicodeMapping(glyphIdx, 
j));
                             mtxTab[glyphIdx].getUnicodeIndex().add(new 
Integer(j));
 
+                            /*
+                             * Removing this feature, since it violates XSL-FO 
and Unicode
+                             * semantics. All characters used in an XSL-FO 
file (once decoded from
+                             * the document encoded) are interpreted as 
Unicode code points.
+                             * This precludes using Unicode code points in the 
Basic Latin range
+                             * for any purpose other than use as Basic Latin 
characters. In
+                             * order to use characters in the Wingding or 
Symbols font, then
+                             * the user must use the specific Unicode code 
point that is mapped
+                             * to the desired glyph via the font's cmap 
tables. What this means
+                             * is that the user must use an appropriate 
private use character
+                             * as defined by the font manufacturer and 
supported by some cmap
+                             * provided in the font. [GA] 2012-04-20
+                             * 
                             if (encodingID == 0 && j >= 0xF020 && j <= 0xF0FF) 
{
                                 //Experimental: Mapping 0xF020-0xF0FF to 
0x0020-0x00FF
                                 //Tested with Wingdings and Symbol TTF fonts 
which map their
@@ -431,6 +444,7 @@ public class TTFFile {
                                     mtxTab[glyphIdx].getUnicodeIndex().add(new 
Integer(mapped));
                                 }
                             }
+                            */
 
                             // Also add winAnsiWidth
                             List v = (List)ansiIndex.get(new Integer(j));

Modified: xmlgraphics/fop/trunk/status.xml
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/status.xml?rev=1328579&r1=1328578&r2=1328579&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/status.xml (original)
+++ xmlgraphics/fop/trunk/status.xml Sat Apr 21 04:03:58 2012
@@ -62,6 +62,10 @@
       documents. Example: the fix of marks layering will be such a case when 
it's done.
     -->
     <release version="FOP Trunk" date="TBD">
+      <action context="Fonts" dev="GA" type="update">
+        Removing experimental feature that violates XSL-FO and Unicode 
semantics by misinterpreting Basic Latin code points. Users must use private 
use codepoints to access font specific
+        character mappings that have no assigned Unicode code point. See bug 
50492.
+      </action>
       <action context="Code" dev="GA" type="fix" fixes-bug="53103" 
due-to="Matthias Reischenbacher">
         Ensure that table cell spanning works in right-to-left writing mode.
       </action>



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to