freetype-devel
[Top][All Lists]
Advanced

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

Re: [ft-devel] Some PDF embedded CFF fonts loading broken


From: Tor Andersson
Subject: Re: [ft-devel] Some PDF embedded CFF fonts loading broken
Date: Mon, 5 Jul 2010 00:29:29 +0200

Werner,

The CFF fonts in question have been generated with FontForge.
One of the fonts that exhibits these errors is:

http://mupdf.com/repos/mupdf/fonts/NimbusSanL-Regu.cff

If there is a flaw in the font file, I'd be more than happy to
regenerate them with a different version of fontforge.

On Sun, Jul 4, 2010 at 11:53 PM, Werner LEMBERG <address@hidden> wrote:
>>> However, the constant `3' is probably wrong.  Please try this line
>>> instead:
>>>
>>>   if ( ( ip + 1 + ( ( decoder->num_hints + 7 ) >> 3 ) ) >= limit )
>>
>> Yes that works.. (FWIW the "ip + 3..." is exactly limit in this case)
>
> Thanks for testing.  As a final check, could you determine the next
> instruction after `hintmask' (or `cntrmask') and its data bytes?
> Theoretically, it must be `return'.
>
> Otherwise, it's getting hairy.  FreeType always assumes that operators
> are atomic.  This holds for `hintmask' and `ctrlmask' also; however,
> both instructions can have a variable number of bytes *following* the
> instruction (contrary to normal instructions which expect its
> arguments already on the stack).  Adobe's Type 2 technical note
> doesn't mention whether it is possible to have, say,
>
>  in subroutine:
>    ctrlmask
>    return
>
>  after returning:
>    data byte 1 for ctrlmask
>    data byte 2 for ctrlmask
>    ...
>
>
>    Werner
>
> _______________________________________________
> Freetype-devel mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/freetype-devel
>
>



reply via email to

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