• Show log

    Commit

  • Hash : 4a2f8f1f
    Author : Alexei Podtelezhnikov
    Date : 2016-07-08T00:16:07

    [smooth] Sub-banding protocol revision. Rasterization sub-banding is utilized at large sizes while using rather small fixed memory pool. Indeed it is possible to make an educated guess how much memory is necessary at a given size for a given glyph. It turns out that, for large majority of European glyphs, you should store about 8 times more boundary pixels than their height. Or, vice versa, if your memory pool can hold 800 pixels the band height should be 100 and you should sub-band anything larger than that. Should you still run out of memory, FreeType bisects the band but you have wasted some time. This is what has been implemented in FreeType since the beginning. It was overlooked, however, that the top band could grow to twice the default band size leading to unnecessary memory overflows there. This commit fixes that. Now the bands are distributed more evenly and cannot exceed the default size. Now the magic number 8 is really suitable for rather simple European scripts. For complex Chinese logograms the magic number should be 13 but that is subject for another day. * src/smooth/ftgrays.c (gray_convert_glyph): Revise sub-banding protocol.

  • README

  •   FreeType 2.6.4
      ==============
    
      Homepage: http://www.freetype.org
    
      FreeType is a freely available software library to render fonts.
    
      It  is  written  in  C,  designed to  be  small,  efficient,  highly
      customizable, and  portable while capable of  producing high-quality
      output  (glyph  images) of  most  vector  and bitmap  font  formats.
    
      Please   read   the  docs/CHANGES   file,   it  contains   IMPORTANT
      INFORMATION.
    
      Read the  files `docs/INSTALL*'  for installation  instructions; see
      the file `docs/LICENSE.TXT' for the available licenses.
    
      The FreeType 2 API reference is located in `docs/reference'; use the
      file   `ft2-toc.html'   as   the   top  entry   point.    Additional
      documentation is available as a separate package from our sites.  Go
      to
    
        http://download.savannah.gnu.org/releases/freetype/
    
      and download one of the following files.
    
        freetype-doc-2.6.4.tar.bz2
        freetype-doc-2.6.4.tar.gz
        ftdoc264.zip
    
      To view the documentation online, go to
    
        http://www.freetype.org/freetype2/documentation.html
    
    
      Mailing Lists
      =============
    
      The preferred way  of communication with the FreeType  team is using
      e-mail lists.
    
        general use and discussion:      freetype@nongnu.org
        engine internals, porting, etc.: freetype-devel@nongnu.org
        announcements:                   freetype-announce@nongnu.org
        git repository tracker:          freetype-commit@nongnu.org
    
      The lists are moderated; see
    
        http://www.freetype.org/contact.html
    
      how to subscribe.
    
    
      Bugs
      ====
    
      Please submit bug reports at
    
        https://savannah.nongnu.org/bugs/?group=freetype
    
      Alternatively,    you   might    report    bugs    by   e-mail    to
      `freetype-devel@nongnu.org'.   Don't  forget   to  send  a  detailed
      explanation of the problem --  there is nothing worse than receiving
      a terse message that only says `it doesn't work'.
    
    
      Enjoy!
    
    
        The FreeType Team
    
    ----------------------------------------------------------------------
    
    Copyright 2006-2016 by
    David Turner, Robert Wilhelm, and Werner Lemberg.
    
    This  file is  part of  the FreeType  project, and  may only  be used,
    modified,  and distributed  under the  terms of  the  FreeType project
    license,  LICENSE.TXT.  By  continuing to  use, modify,  or distribute
    this file you  indicate that you have read  the license and understand
    and accept it fully.
    
    
    --- end of README ---