[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [ft-devel] gamma correction and stem darkening
From: |
suzuki toshiya |
Subject: |
Re: [ft-devel] gamma correction and stem darkening |
Date: |
Tue, 19 Jan 2016 15:37:22 +0900 |
User-agent: |
Mozilla-Thunderbird 2.0.0.24 (X11/20100329) |
Oh, the mail server of my office was too lazy,
this message was delivered after the commit by
Werner :-)
Regards,
mpsuzuki
suzuki toshiya wrote:
> Dear Derek,
>
> Thank you very very much for finding new tricky font!
> I will commit your patch soon.
>
> Regards,
> mpsuzuki
>
> Derek B. Noonburg wrote:
>> After some more investigation, this appears to be a simple case of a
>> different version (or modification?) of a known tricky font.
>>
>> There are three font subsets in that PDF file. All three have the same
>> cvt, fpgm, and prep checksums. The cvt and prep checksums match
>> DFKaiShu, but the fpgm checksum and length are different.
>>
>> I'm attaching those three fonts.
>>
>> And here's a patch:
>>
>> *** freetype-2.6.2/src/truetype/ttobjs.c 2015-11-28 10:08:52.000000000
>> -0800
>> --- freetype-2.6.2b/src/truetype/ttobjs.c 2016-01-18 11:15:37.982092742
>> -0800
>> ***************
>> *** 246,252 ****
>> tt_check_trickyness_sfnt_ids( TT_Face face )
>> {
>> #define TRICK_SFNT_IDS_PER_FACE 3
>> ! #define TRICK_SFNT_IDS_NUM_FACES 17
>>
>> static const tt_sfnt_id_rec sfnt_id[TRICK_SFNT_IDS_NUM_FACES]
>> [TRICK_SFNT_IDS_PER_FACE] = {
>> --- 246,252 ----
>> tt_check_trickyness_sfnt_ids( TT_Face face )
>> {
>> #define TRICK_SFNT_IDS_PER_FACE 3
>> ! #define TRICK_SFNT_IDS_NUM_FACES 18
>>
>> static const tt_sfnt_id_rec sfnt_id[TRICK_SFNT_IDS_NUM_FACES]
>> [TRICK_SFNT_IDS_PER_FACE] = {
>> ***************
>> *** 270,275 ****
>> --- 270,280 ----
>> { 0x5A30CA3BUL, 0x00009063UL }, /* fpgm */
>> { 0x13A42602UL, 0x0000007EUL } /* prep */
>> },
>> + { /* DFKaiShu2 */
>> + { 0x11E5EAD4UL, 0x00000350UL }, /* cvt */
>> + { 0xA6E78C01UL, 0x00008998UL }, /* fpgm */
>> + { 0x13A42602UL, 0x0000007EUL } /* prep */
>> + },
>> { /* HuaTianKaiTi */
>> { 0xFFFBFFFCUL, 0x00000008UL }, /* cvt */
>> { 0x9C9E48B8UL, 0x0000BEA2UL }, /* fpgm */
>>
>> - Derek
>>
>>
>> On 2016 Jan 17, suzuki toshiya wrote:
>>> Dear Derek,
>>>
>>> I have not expected that the tricky font detection
>>> technique was still worthful to discus after the
>>> expiration of bytecode interpreter patent :-)
>>>
>>> I'm interested in the example which current detection
>>> cannot detect correctly. The current detection is just
>>> a comparison with the checksums of "known" tricky fonts,
>>> and, if there is yet another tricky font, it should be
>>> appended the the blacklist.
>>>
>>> Regards,
>>> suzuki toshiya
>>>
>>> Derek B. Noonburg wrote:
>>>> On 17 Jan, Werner LEMBERG wrote:
>>>>>> Unfortunately, I don't think it will be possible to detect the
>>>>>> tricky fonts.
>>>>> I think it *is* possible. The method, as implemented by Toshiya-san,
>>>>> compares various SFNT table checksums. Among them is the `cvs '
>>>>> table, and modifying this table is essentially impossible without
>>>>> interpreting and changing the bytecode. Ditto for `fpgm'. I dare to
>>>>> say that even a subsetted font with a single glyph contains the
>>>>> original `cvs ' and `fpgm' tables unmodified, which should enable
>>>>> FreeType to discover its trickyness.
>>>>>
>>>>> Do you have counterexamples to this assumption?
>>>> Very interesting... I wasn't aware that FreeType used that technique. I
>>>> just looked through the code and found tt_check_trickyness_sfnt_ids -- I
>>>> assume that's the code you're referring to. I didn't trace through the
>>>> code; do I need to do anything special to enable those checksum tests?
>>>>
>>>> I have at least one PDF file with Chinese TrueType fonts that render
>>>> correctly with the native hinter and incorrectly without it. I'll
>>>> extract those fonts and see what the cvt and fpgm tables look like.
>>>>
>>>> I'll also be happy to make the fonts available for testing.
>>>>
>>>> - Derek
>>>>
>>>>
>>>> _______________________________________________
>>>> Freetype-devel mailing list
>>>> address@hidden
>>>> https://lists.nongnu.org/mailman/listinfo/freetype-devel
>
> _______________________________________________
> Freetype-devel mailing list
> address@hidden
> https://lists.nongnu.org/mailman/listinfo/freetype-devel
- Re: [ft-devel] gamma correction and stem darkening, (continued)
- Re: [ft-devel] gamma correction and stem darkening, Werner LEMBERG, 2016/01/17
- Re: [ft-devel] gamma correction and stem darkening, Derek B. Noonburg, 2016/01/17
- Re: [ft-devel] gamma correction and stem darkening, Werner LEMBERG, 2016/01/17
- Re: [ft-devel] gamma correction and stem darkening, Werner LEMBERG, 2016/01/18
- Re: [ft-devel] gamma correction and stem darkening, Derek B. Noonburg, 2016/01/18
- Re: [ft-devel] gamma correction and stem darkening, Werner LEMBERG, 2016/01/19
- Message not available
- Re: [ft-devel] gamma correction and stem darkening, suzuki toshiya, 2016/01/17
- Re: [ft-devel] gamma correction and stem darkening, Derek B. Noonburg, 2016/01/18
- Re: [ft-devel] gamma correction and stem darkening, Werner LEMBERG, 2016/01/19
- Message not available
- Re: [ft-devel] gamma correction and stem darkening, suzuki toshiya, 2016/01/19
- Message not available
- Message not available
- Re: [ft-devel] gamma correction and stem darkening,
suzuki toshiya <=
- Re: [ft-devel] gamma correction and stem darkening, Behdad Esfahbod, 2016/01/19
- Re: [ft-devel] gamma correction and stem darkening, Werner LEMBERG, 2016/01/19
- Re: [ft-devel] gamma correction and stem darkening, Behdad Esfahbod, 2016/01/19
- Re: [ft-devel] gamma correction and stem darkening, Patrick Lam, 2016/01/19
- Message not available
- Re: [ft-devel] gamma correction and stem darkening, suzuki toshiya, 2016/01/19
- Re: [ft-devel] gamma correction and stem darkening, Werner LEMBERG, 2016/01/19
- Re: [ft-devel] gamma correction and stem darkening, Nikolaus Waxweiler, 2016/01/19
- Re: [ft-devel] gamma correction and stem darkening, Alexei Podtelezhnikov, 2016/01/19
- Re: [ft-devel] gamma correction and stem darkening, Werner LEMBERG, 2016/01/19
Re: [ft-devel] gamma correction and stem darkening, Alexei Podtelezhnikov, 2016/01/16