[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [Devel] unpatented hinting system
From: |
Graham Asher |
Subject: |
RE: [Devel] unpatented hinting system |
Date: |
Sat, 15 Mar 2003 13:57:26 -0000 |
David,
thanks for your reply, in which you asked me to wait till after the release
of FreeType 2.1.4 before committing the unpatented hinting system. That's
obviously a good thing to do.
<<<<<<
I had not the time to review your new code,
but I'm pretty confident that it is of reasonnably high quality and will
fit with the rest of the engine.
>>>>>>
The code, I think, conforms to the FreeType style, and has very little
impact on anything. It is actually very simple and just prevents
the projection and freedom vectors from being stored, or a dot-product
calculation being made, and disables delta hinting, which is also covered by
a patent.
<<<<<<
Anyway, count on me to make a few adjustments if they're really needed.
>>>>>>
Thanks.
<<<<<<
I encourage you to commit your changes to the CVS tree as soon as 2.1.4 is
out, which should be really soon now. I'll try to find a few hours this
weekend to close the last few bugs detailed in the mailing lists and tag
the sources.
As soon as the tag is applied, you'll be able to commit your changes.
>>>>>>
Excellent news - thanks.
<<<<<<
I think that the default build of FreeType should come with the
unpatented hinter compiled by default, but only enabled when the user
explicitely selects it through a FT_Parameter,
>>>>>>
I would prefer to be even more conservative and NOT compile the unpatented
hinter by default - but I suppose it doesn't matter at all, because
FreeType2 comes with the native bytecode interpreter not compiled at all. I
was a little worried that people might not want to have to consider the
possible run-time impact of the unpatented hinter, even though that impact
would be very small indeed, and they might want the default build to be
exactly the same as before.
<<<<<<
at least until we get a way to automatically determine its need.
Note that a few small internal changes to the engine will be needed
when such an algorithm is needed (currently, the decision of choosing
the auto-hinter or the native one is done on a per-driver-flag test
that must be changed somewhat to something a bit more flexible). I'm
of course ready to perform or accept such changes in the engine.
>>>>>>
I'm not sure its practical to select the unpatented hinter automatically. To
do this reliably we would have to run all the bytecode as a symbolic
simulation, on loading the typeface, and determine whether the patented
operations were needed.
A very simple heuristic could just check whether the vendor name was
'Dynalab' or something like that, but I am not sure that is worth the
trouble.
Best regards,
Graham
[Devel] new fixes, David Chester, 2003/03/14