freetype
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ft] Help finding glyphs in TTF files


From: mf
Subject: Re: [ft] Help finding glyphs in TTF files
Date: Sun, 31 Mar 2013 04:58:53 -0700 (PDT)

Thanks Werner,

>What compiler warnings do you get?

The only warning I get is that 'gray_dump_cell's is defined but not used due to 
the FT_DEBUG_LEVEL_TRACE define.

>PS: The cmap stuff uses `longjmp' and friends; this could also be a
>    source of problems.

It looks like the setjmp/longjmp code is just doing a validation.  I commented 
out this code, but the behavior is the same, so unless I'm not understanding 
well, I don't think this is the source of the problem.  Please correct me if 
I'm wrong

>Please build the library for a different platform, then execute your
>program `foo' with
>
>  FT2_DEBUG=any:7 foo
>
>and redirect the output to a file.  Repeat the same on your ARM
>platform and compare the results.  This should help find the
>problematic spot.
>
>You probably have to provide your own version of `ftdebug.c' in case
>environment variables are not supported.

I did this.  Thanks for the instructions.  The first 107 lines are the same, so 
that's encouraging, but after that the differences are quite drastic, but I'm 
assuming that is expected if the cmaps don't load.  Here's where the 
differences start.  NOTE: I did a search and replace of the memory addresses to 
make the comparison more convenient.


***ARM System***
tt_face_lookup_table: 0x80a9c0, `glyf' -- found table.
tt_face_lookup_table: 0x80a9c0, `fvar' -- could not find table
tt_face_build_cmaps: broken cmap sub-table ignored
tt_face_build_cmaps: unsupported cmap sub-table ignored
tt_face_build_cmaps: unsupported cmap sub-table ignored
tt_face_build_cmaps: broken cmap sub-table ignored
tt_face_build_cmaps: unsupported cmap sub-table ignored
sfnt_load_face: done
tt_face_lookup_table: 0x80a9c0, `hdmx' -- could not find table
tt_face_lookup_table: 0x80a9c0, `glyf' -- found table.
Locations tt_face_lookup_table: 0x80a9c0, `loca' -- found table.
loaded
CVT tt_face_lookup_table: 0x80a9c0, `cvt ' -- found table.
loaded
Font program tt_face_lookup_table: 0x80a9c0, `fpgm' -- found table.
-executing `prep' table

***Linux Mint System***
tt_face_lookup_table: 0x80a9c0, `glyf' -- found table.
tt_face_lookup_table: 0x80a9c0, `fvar' -- could not find table
sfnt_load_face: done
tt_face_lookup_table: 0x80a9c0, `hdmx' -- could not find table
tt_face_lookup_table: 0x80a9c0, `glyf' -- found table.
Locations tt_face_lookup_table: 0x80a9c0, `loca' -- found table.
loaded
CVT tt_face_lookup_table: 0x80a9c0, `cvt ' -- found table.
loaded
Font program tt_face_lookup_table: 0x80a9c0, `fpgm' -- found table.
loaded,          613 bytes
Prep program tt_face_lookup_table: 0x80a9c0, `prep' -- found table.
loaded,           64 bytes
FT_Open_Face: New face object, adding to list

I'm attaching the two files in case you feel like taking a look, but I won't 
blame you if you don't.  I'm quite puzzled, but I'll continue to investigate.  
I reiterate my plea for help.

Thank you,
Mike



----- Original Message -----
From: Werner LEMBERG <address@hidden>
To: address@hidden
Cc: address@hidden; address@hidden
Sent: Sunday, March 31, 2013 3:44 PM
Subject: Re: [ft] Help finding glyphs in TTF files


> I compiled with FT_DEBUG_LEVEL_TRACE to try and find out what's
> going on.  I know, I should have done that earlier, but I'm still
> trying to get familiar with this library.  Anyway, I'm getting the
> following messages for all of my fonts.
> 
> tt_face_build_cmaps: broken cmap sub-table ignored
> tt_face_build_cmaps: unsupported cmap sub-table ignored
> 
> These two messages appear once or multiple times depending on the
> font file.

Assuming that the fonts work fine under Windows, this is indeed very
suspicious.

> Since I'm now suspecting my build as part of the problem, here's
> some more information that may be relevant.  [...]

Please build the library for a different platform, then execute your
program `foo' with

  FT2_DEBUG=any:7 foo

and redirect the output to a file.  Repeat the same on your ARM
platform and compare the results.  This should help find the
problematic spot.

You probably have to provide your own version of `ftdebug.c' in case
environment variables are not supported.

What compiler warnings do you get?


    Werner


PS: The cmap stuff uses `longjmp' and friends; this could also be a
    source of problems.

Attachment: ARM.txt
Description: Text document

Attachment: Linux64.txt
Description: Text document


reply via email to

[Prev in Thread] Current Thread [Next in Thread]