freetype
[Top][All Lists]
Advanced

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

Start points of contours & rasterizer [was: Need help on dvi viewer with


From: Tom Kacvinsky
Subject: Start points of contours & rasterizer [was: Need help on dvi viewer with freetype]
Date: Sun, 8 Oct 2000 18:36:23 -0400 (EDT)

Hi all,

I found what I think may be the source of the problem:

/integraldisplay has *exactly* one coutour, and the start point of this coutour
is at a cusp (i.e., the contour is not differentiable at this point).

The glyph /contintegraldisplay has three contours, the first contour of which
also starts at a cusp.

If I change the start point of /integraldisplay so that it is not on a cusp, the
problem goes away.

Since I beleive that the Type 1 parser is working correctly for this font, I
suspect something with the rasterizer.  It makes no sense for the parser to fail
on /integraldisplay and succeed on /contintegraldisplay.  It makes some sense
that the rasterizer would fail on both if it fails on one, but why does it
succeed on /contintegraldisplay and not /integraldisplay ?

Tom

On Sun, 8 Oct 2000, Tom Kacvinsky wrote:

> Well, it is not the descender depth that is the problem; I just found
> another glyph (/contintegraldisplay) that has matching metrics, and it
> displays just fine.  As do other glyphs with deeper descenders.
> 
> Still looking at the font...
> 
> On Sun, 8 Oct 2000, Tom Kacvinsky wrote:
> 
> > Unlike the other fonts from the Computer Modern family, CMEX10 has
> > many glyphs with *deep* descenders.  These glyphs are completely
> > below the baseline and are in excess of 1500 Type 1 units (1000 Type 1
> > units per em) deep.  I suspect that this is the cause of the problem.
> > I am looking into it right now; ftview fails to display glyph number
> > 90 (/integraldisplay).
> > 
> > Tom
> > 
> > On Sun, 8 Oct 2000 address@hidden wrote:
> > 
> > > hi! right now i have a pretty functional dvi viewer written for ggi
> > > and using freetype for fonts. sometimes, however, weird things happen,
> > > and i hope someone can help me.
> > > 
> > > as an example, if i'm viewing a file that uses cmex10, for example:
> > > when the dvi files uses glyph number 90, freetype signals an error.
> > > here's what happens: the code below, executed with ch=90, and
> > > curr_font->face being from cmex10.pfb, scaled correctly
> > > 
> > > -----------------
> > > if(FT_Load_Glyph(curr_font->face,ch,FT_LOAD_NO_HINTING) ||
> > >    FT_Get_Glyph(curr_font->face->glyph,curr_font->glyphs+ch))
> > > {
> > >   fprintf(stderr,"Could not load glyph %d from font 
> > > %d.\n",ch,curr_font->number);
> > >   terminate(1);
> > > }
> > > -----------------
> > > 
> > > terminates my program (could not load glyph 90 from font 18). i would
> > > like to release my viewer for the public, but while these types of
> > > errors keep popping up i can't... (btw, that never happens with cmr10
> > > and the likes. it also works fine with other glyphs from cmex10) since
> > > i'm no font expert, i hope some of you guys can pinpoint where the
> > > error is occurring (in freetype, in cmex10, encoding, my code...).
> > > 
> > > thanks!
> > > 
> > > --
> > > Cesar Augusto Rorato Crusius    __o      __o      __o      __o      __o   
> > >  
> > > Stanford University           _`\<,    _`\<,    _`\<,    _`\<,    _`\<,   
> > >  
> > > e-mail:address@hidden    (_)/(_)  (_)/(_)  (_)/(_)  (_)/(_)  (_)/(_)   
> > > www.stanford.edu/~crusius
> > >                                        o      _     _         _
> > >    __o      __o      __o      __o     /\_   _ \\o  (_)\__/o  (_)
> > >  _`\<,    _`\<,    _`\<,    _`\<,    _>(_) (_)/<_    \_| \   _|/' \/
> > > (_)/(_)  (_)/(_)  (_)/(_)  (_)/(_)  (_)        (_)   (_)    (_)'  _\o_
> > > 
> > > He who sacrifices functionality for ease of use
> > > Loses both and deserves neither
> > > 
> > 
> 




reply via email to

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