I'm not sure what the rationale for mapping to the ASCII range is in either
case.

On Fri, Dec 17, 2010 at 1:03 AM, <bugzi...@apache.org> wrote:

> https://issues.apache.org/bugzilla/show_bug.cgi?id=50492
>
>           Summary: Mapping of glyphs in the private area of TTF symbol
>                    fonts is only done if cmapRangeOffsets is not zero
>           Product: Fop
>           Version: 1.0
>          Platform: PC
>        OS/Version: Windows XP
>            Status: NEW
>          Severity: normal
>          Priority: P2
>         Component: fonts
>        AssignedTo: fop-dev@xmlgraphics.apache.org
>        ReportedBy: az7...@googlemail.com
>
>
> In the current version of org.apache.fop.fonts.truetype.TTFFile, method
> readUnicodeCmap, there is a workaround to map the glyphs of TTF symbol
> fonts
> from the private area to the ascii range:
>
> if (encodingID == 0 && j >= 0xF020 && j <= 0xF0FF) {
>  //Experimental: Mapping 0xF020-0xF0FF to 0x0020-0x00FF
>  //Tested with Wingdings and Symbol TTF fonts which map their
>  //glyphs in the region 0xF020-0xF0FF.
>  int mapped = j - 0xF000;
> ...
>
> but this workaround is only applied in the case of
> if (cmapRangeOffsets[i] != 0 && j != 65535)
> ...
>
> This mapping should also be done in the else case. There are several symbol
> fonts (e.g. Wingdings 2 v1.55, Wingdings 3 v1.55) where cmapRangeOffsets[i]
> ==
> 0.
>
> --
> Configure bugmail:
> https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
> ------- You are receiving this mail because: -------
> You are the assignee for the bug.
>

Reply via email to