freetype-devel
[Top][All Lists]
Advanced

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

Re: Set_Pixel_Sizes for TTF


From: Werner LEMBERG
Subject: Re: Set_Pixel_Sizes for TTF
Date: Sun, 15 Oct 2000 22:07:10 +0200 (CEST)

> > > A. Set_Char_Size sets outline's size, and set sbit's when
> > > Set_Pixel_Size is not applied.
> > > B. Set_Pixel_Size sets sbit's size, and set outline's when
> > > Set_Char_Size is not applied.
> > 
> > Sounds nice.  Can you provide a patch?
> 
> Wait for a while.  There is another problem.  When we use above
> APIs, sbit's ppem pair are different from outline's metrics.  It is
> reasonable for handling glyphs correctly.  On the other hand
> face->size->metrics has ONE ppem pair.  I think face->size->metrics
> should be filled with outline's one.  Therefore there are no ways
> obtaining sbit's size.

Question: How can sbit ppem values different from outline ppem values
be handled automatically within an application?

> Plan 0:
>   Set_Pixel_Size changes sbit's metrics.
>   Set_Char_Size changes outline's one.
> Plan 1:
>   Set_{Pixel,Char}_Size overrides metrics of outline and sbit's one.
> Plan 2:
>   Plan 1 +
>   I. When Set_Pixel_Size has already applied, Set_Char_Size fails.
>   II. When Set_Char_Size has already applied, Set_Pixel_Size fails.
> Plan 3:
>   We provide APIs A and B, and hide sbit's metrics.
> Plan 4:
>   We provide APIs A and B and face->size->fixed_size_metrics.
> Plan 5:-(
>   We ignore sbit.
> 
> All plans are not nice.
> Plan 0   : As I said, it is not convinient for some cases.
> Plan 1, 2: It violates the above convention you said.
> Plan 3   : There are no ways obtaing sbit's metrics.
> Plan 4   : It is resonable but not suitable with the "FT modular
>            structure". 
> Plan 5   : ......

What about this:

  Plan 4a:
    We provide APIs A and B and add an sbit_metrics field to a
    TrueType-specific structure.

This would allow that programs which specifically deal with TrueType
fonts (e.g. a TT font server) can access the sbit metrics directly,
bypassing the API if necessary.  For all other font drivers, both
Set_Pixel_Size() and Set_Char_Size() should do essentially the same.


    Werner



reply via email to

[Prev in Thread] Current Thread [Next in Thread]