[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [ft-devel] [patch] TrueType GX/AAT validator
From: |
mpsuzuki |
Subject: |
Re: [ft-devel] [patch] TrueType GX/AAT validator |
Date: |
Wed, 24 Aug 2005 09:44:25 +0900 |
Dear Mr. George Williams,
On 23 Aug 2005 14:50:54 -0700
George Williams <address@hidden> wrote:
>On Mon, 2005-08-22 at 18:29, address@hidden wrote:
>> 4-5. invalid feature number (117/183)
>> -------------------------------------
>> GX/AAT extension can include 255 different features for layout, but
>> popular layout features are predefined
>Are you sure it's only 255? The 'feat' table stores both feature and
>setting ids as uint16. The 'mort'/'morx' chains also use uint16. I
>didn't see anything which said they were limited to 255 -- but I haven't
>read everything:-)
Excuse me, it was my mistake in documentation: 65535, not 255.
gxvalid can use uint16 feature number, does not limit to 255.
>(And there are certainly fonts which use feature numbers>255,
>Osaka.dfont for one)
Thanks for giving concrete example, OK,
following is (part of) output of gxvalid on Osaka 4.2.
[ftvalid:gx] validation targets: mort
-------------------------------------------------------------------
validation mort table
validate chain 1/1
mort chain header table
mort feature list table
featureType 16000 is out of registered range, setting 0 is unchecked
featureType 16000 is out of registered range, setting 1 is unchecked
featureType 16001 is out of registered range, setting 0 is unchecked
featureType 16001 is out of registered range, setting 1 is unchecked
featureType 4 is registered setting 0
featureType 4 is registered setting 1
featureType 103 is registered setting 0
featureType 103 is registered setting 2
featureType 25 is registered setting 0
featureType 25 is registered setting 1
featureType 0 is registered setting 1
I see, as you've pointed out, featureType > 255 are used,
and gxvalid handles them correctly.
>> (see http://developer.apple.com/fonts/Registry/index.html).
>> Some fonts include feature number which is incompatible with
>> predefined feature registry.
>>
>> In our survey, there are 140 fonts including "feat" table.
>> a) 14 fonts uses too-large feature number (out of defined range).
>> b) 67 fonts uses feature number which should not be used.
>> c) 117 fonts set wrong feature range (nSetting).
>> this infraction is found in mort/morx.
>The 'feat' (and 'mort') documentation says:
> Apple has defined a standard set of text features. You may
> include one or more of these or create your own text features.
> Font features that will be supported by your font must be part
> of the Font Feature Registry maintained by Apple Computer, Inc.
>To me this seems contradictory. First we are told we can create our own
>features, then we are told we can only use standard ones.
>(I really dislike Apple's TrueType documentation)
I see. In fact, Osaka.dfont is manifactured by Apple themselves,
but uses non-standard feature number, and it is not registered.
Umm, I remove "too-large feature number" from the error list,
because it is 'officially' permitted to use non-standard feature
number, and Apple themselves do so, as you pointed out.
As attached in above, at present, gxvalid shows tracing message
about such feature number: featureType is not in predefined range,
so the correctness of setting value cannot be validated.
I think it is acceptable point of compromise.
Regards,
mpsuzuki
Re: [ft-devel] [patch] TrueType GX/AAT validator, George Williams, 2005/08/23
Re: [ft-devel] [patch] TrueType GX/AAT validator,
mpsuzuki <=