[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [ft-devel] benchmark of sfnt checksum recalculation
From: |
suzuki toshiya |
Subject: |
Re: [ft-devel] benchmark of sfnt checksum recalculation |
Date: |
Sun, 01 May 2011 00:55:03 +0900 |
User-agent: |
Mozilla-Thunderbird 2.0.0.12 (X11/20080406) |
Hi all,
Just I've committed to make tricky font detector to ignore
the existing checksum written in the TrueType header, like this.
In my benchmark, the latency in FT_New_Face() introduced
by this change is less than 0.01%. However, if anybody thinks
extra seek of the font file is problematic (and you do not
care about the embedded tricky font, e.g. FT2 is used only
for font files, not a document package), please post a message.
I'm really willing to add configuration option to prioritize
the existing value.
Regards,
mpsuzuki
diff --git a/ChangeLog b/ChangeLog
index fe645d4..0221692 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,17 @@
2011-04-30 suzuki toshiya <address@hidden>
+ [truetype] Recalculate the sfnt table checksum always.
+
+ * src/truetype/ttobjs.c (tt_get_sfnt_checksum): Recalculate
+ the sfnt table checksum even if non-zero value is writte in
+ the TrueType font header. Some bad PDF generators write
+ wrong values. For detail, see examples and benchmark tests
+ of the latency by recalculation:
+ http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00091.html
+ http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00096.html
+
+2011-04-30 suzuki toshiya <address@hidden>
+
[truetype] Register a set of tricky fonts, NEC FA family.
* src/truetype/ttobjs.c (tt_check_trickyness_sfnt_ids):
diff --git a/src/truetype/ttobjs.c b/src/truetype/ttobjs.c
index 11cd4b3..942361c 100644
--- a/src/truetype/ttobjs.c
+++ b/src/truetype/ttobjs.c
@@ -213,8 +213,10 @@
tt_get_sfnt_checksum( TT_Face face,
FT_UShort i )
{
+#if 0 /* if we believe the written value, use following part. */
if ( face->dir_tables[i].CheckSum )
return face->dir_tables[i].CheckSum;
+#endif
if ( !face->goto_table )
return 0;
Werner LEMBERG wrote:
>> Here is 2nd testcases checking ca. 1900 fonts [...]
>
> Thanks. Since this is a once-per-font operation, I don't think we
> should think too much about timing issues. Please proceed.
>
>
> Werner
- Re: [ft-devel] Registration of a set of trickyfonts by NEC, (continued)
- Re: [ft-devel] Registration of a set of trickyfonts by NEC, Miles Bader, 2011/04/28
- Re: [ft-devel] Registration of a set of trickyfonts by NEC, mpsuzuki, 2011/04/28
- Re: [ft-devel] Registration of a set of trickyfonts by NEC, david.bevan, 2011/04/28
- Re: [ft-devel] Registration of a set of trickyfonts by NEC, Werner LEMBERG, 2011/04/28
- Re: [ft-devel] Registration of a set of trickyfonts by NEC, mpsuzuki, 2011/04/28
- [ft-devel] benchmark of sfnt checksum recalculation, mpsuzuki, 2011/04/29
- Re: [ft-devel] benchmark of sfnt checksum recalculation, mpsuzuki, 2011/04/29
- Re: [ft-devel] benchmark of sfnt checksum recalculation, Werner LEMBERG, 2011/04/30
- Re: [ft-devel] benchmark of sfnt checksum recalculation,
suzuki toshiya <=
- Re: [ft-devel] benchmark of sfnt checksum recalculation, Werner LEMBERG, 2011/04/30
- Re: [ft-devel] Registration of a set of trickyfonts by NEC, suzuki toshiya, 2011/04/28
- Re: [ft-devel] Registration of a set of trickyfonts by NEC, mpsuzuki, 2011/04/30