printEscaped(ch);
} else {  _printer.printText( "&#x" ); _printer.printText(Integer.toHexString(ch)); _printer.printText( ';' );
    protected void printEscaped( String source )        throws IOException    {        for ( int i = 0 ; i < source.length() ; ++i ) {            int ch = source.charAt(i);            if ((ch & 0xfc00) == 0xd800 && i+1 < source.length()) {                int lowch = source.charAt(i+1);                if ((lowch & 0xfc00) == 0xdc00) {                    ch = 0x10000 + ((ch-0xd800)<<10) + lowch-0xdc00;                    i++;                }            }            printEscaped(ch);        }    }