I mean FOP itself needs to be modified to properly handle UTF-16 encoded (i.e., Java string encoded) surrogate pair encodings of non-BMP Unicode code points.
I have been doing such modifications in part in my recent work to add complex script support (in which I did code for handling non-BMP codepoints), but I have not undertaken to perform all necessary modifications to support extra-BMP code points in pre-existing code. I have created a bug report for this at: https://issues.apache.org/bugzilla/show_bug.cgi?id=51843 I am willing to accept the work of resolving this bug, but I can't give you a schedule at this time as to when I will work on it (as I have other work on complex scripts that will take priority). If anyone else wishes to actively work on it and develop a patch before I do, they are free to do so; in which case, I would appreciate hearing about such work ahead of time so I don't create a redundant patch. Regards, Glenn 2011/9/19 BRUCE Y L LEE <bruce...@gmail.com> > Hi Glenn, > > Thanks your details explanation. > > May I know what is the meaning of "upgrade to the current code base" ? It > is related to OS or JDK? And how to upgrade to the current code base? I need > to know how to handle the CJK Unified Ideographs Extension B characters > (characters > whose scalar value is greater than 65535 (decimal)) by my project > needs. Thank you very much. > > Regards, > Bruce > > > 2011/9/17 Glenn Adams <gl...@skynav.com> > >> In general, FOP does not support the use of characters outside the Unicode >> Base Multilingual Plane (BMP), i.e., characters whose scalar value is >> greater than 65535 (decimal). >> >> Support for extra-BMP Unicode codepoints will require an upgrade to the >> current code base. As you can see by the error messages below, it is >> attempting to treat individual UTF-16 surrogate pair codes as distinct code >> points, and not as a UTF-16 encoding of an extra-BMP code point. >> >> Regards, >> Glenn >> >> 2011/9/16 BRUCE Y L LEE <bruce...@gmail.com> >> >>> Hi >>> >>> I would like to transform XML to PDF using Apache FOP. >>> CJK Unified Ideographs Extension B characters is included in the XML >>> (e.g. 𠀀), I had add the font "Simsun (Founder Extended)" for Apache >>> FOP but it cannot render the CJK Unified Ideographs Extension B characters, >>> please help. >>> >>> CJK_ExtB.xml >>> [code] >>> <CJK_ExtB>𠀀</CJK_ExtB> >>> [/code] >>> >>> CJK_ExtB_FO.xsl >>> [code] >>> <?xml version="1.0" encoding="UTF-8"?> >>> <xsl:stylesheet version="1.0" xmlns:xsl=" >>> http://www.w3.org/1999/XSL/Transform" xmlns:fo=" >>> http://www.w3.org/1999/XSL/Format"> >>> <xsl:template match="/"> >>> <fo:root> >>> <fo:layout-master-set> >>> <fo:simple-page-master master-name="A4" page-height="29.7cm" >>> page-width="21.0cm" margin="2cm"> >>> <fo:region-body/> >>> </fo:simple-page-master> >>> </fo:layout-master-set> >>> <fo:page-sequence master-reference="A4"> >>> <fo:flow flow-name="xsl-region-body"> >>> <fo:block font-family="Simsun (Founder Extended)">測試<xsl:value-of >>> select="CJK_ExtB"/>測試</fo:block> >>> </fo:flow> >>> </fo:page-sequence> >>> </fo:root> >>> </xsl:template> >>> </xsl:stylesheet> >>> [/code] >>> >>> fop.xconf >>> [code] >>> <renderer mime="application/pdf"> >>> <filterList> >>> <value>flate</value> >>> </filterList> >>> <fonts> >>> <font metrics-url="file:///D:/fop-1.0/Fonts/SURSONG.xml" kerning="yes" >>> embed-url="file:///D:/fop-1.0/fonts/SURSONG.ttf"> >>> <font-triplet name="Simsun (Founder Extended)" style="normal" >>> weight="normal"/> >>> <font-triplet name="Simsun (Founder Extended)" style="normal" >>> weight="bold"/> >>> <font-triplet name="Simsun (Founder Extended)" style="italic" >>> weight="normal"/> >>> <font-triplet name="Simsun (Founder Extended)" style="italic" >>> weight="bold"/> >>> </font> >>> </fonts> >>> </renderer> >>> [/code] >>> >>> cmd >>> [code] >>> D:\fop-1.0>fop -c conf\fop.xconf -xml CJK_ExtB.xml -xsl CJK_ExtB_FO.xsl >>> -pdf CJK_ExtB.pdf >>> 9月 15, 2011 2:32:20 下午 org.apache.fop.apps.FopFactoryConfigurator >>> configure INFO: Default page-height set to: 11in >>> 9月 15, 2011 2:32:20 下午 org.apache.fop.apps.FopFactoryConfigurator >>> configure INFO: Default page-width set to: 8.26in >>> 9月 15, 2011 2:32:23 下午 org.apache.fop.events.LoggingEventListener >>> processEvent WARNING: Glyph "?" (0xd840) not available in font >>> "FZSY--SURROGATE-0". >>> 9月 15, 2011 2:32:23 下午 org.apache.fop.events.LoggingEventListener >>> processEvent WARNING: Glyph "?" (0xdc00) not available in font >>> "FZSY--SURROGATE-0". >>> [/code] >>> >>> >>> Regards, >>> Bruce >> >> >