Re: Optimizing Pango OpenType engine



> As you may have noticed, I'm working around the
> pango/pango/opentype these days.  I've found a lot of places to
> improve, and guess I'm going to rewrite the whole thing
> eventually.  [...]
>
> On my top is to commit, of course :).  I really prefer to commit
> to some CVS instead of moving around zillion patches.
>
> Moreover, do you have any advice about this project?  Anything you
> want to see implemented there?  Any hints?  I've thought of
> following things so far: [...]

If you are really willing to rewrite GSUB and GPOS handling I strongly
suggest that you have a look at the new `otvalid' module in the CVS of
FreeType 2 at savannah.gnu.org (to be released soon as 2.1.10).  This
module validates OpenType tables so that you can remove most OpenType
related error checking code in Pango; it should also be easier now to
access OpenType data on demand instead of parsing them in advance.

>   - Reduce memory footprint by implementing inheritance by
> subtyping instead of union-ing all subtypes.
>
>   - Share code between gsub and gpos subsystems by carefully
> designing data structures.
>
> [...]

Again, have a look at the otvalid module which provides the most
compact representation of OpenType structures I know of.  Something
similar might work for actually using the data instead of validating
them.


    Werner



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