diff options
Diffstat (limited to 'third_party/freetype-py/freetype/ft_enums/ft_load_flags.py')
-rw-r--r-- | third_party/freetype-py/freetype/ft_enums/ft_load_flags.py | 154 |
1 files changed, 154 insertions, 0 deletions
diff --git a/third_party/freetype-py/freetype/ft_enums/ft_load_flags.py b/third_party/freetype-py/freetype/ft_enums/ft_load_flags.py new file mode 100644 index 0000000..ad79b7b --- /dev/null +++ b/third_party/freetype-py/freetype/ft_enums/ft_load_flags.py @@ -0,0 +1,154 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# ----------------------------------------------------------------------------- +# +# FreeType high-level python API - Copyright 2011-2012 Nicolas P. Rougier +# Distributed under the terms of the new BSD license. +# +# ----------------------------------------------------------------------------- +""" +A list of bit-field constants used with FT_Load_Glyph to indicate what kind +of operations to perform during glyph loading. + + +FT_LOAD_DEFAULT + + Corresponding to 0, this value is used as the default glyph load + operation. In this case, the following happens: + + 1. FreeType looks for a bitmap for the glyph corresponding to the face's + current size. If one is found, the function returns. The bitmap data can + be accessed from the glyph slot (see note below). + + 2. If no embedded bitmap is searched or found, FreeType looks for a scalable + outline. If one is found, it is loaded from the font file, scaled to + device pixels, then 'hinted' to the pixel grid in order to optimize + it. The outline data can be accessed from the glyph slot (see note below). + + Note that by default, the glyph loader doesn't render outlines into + bitmaps. The following flags are used to modify this default behaviour to + more specific and useful cases. + + +FT_LOAD_NO_SCALE + + Don't scale the outline glyph loaded, but keep it in font units. + + This flag implies FT_LOAD_NO_HINTING and FT_LOAD_NO_BITMAP, and unsets + FT_LOAD_RENDER. + + +FT_LOAD_NO_HINTING + + Disable hinting. This generally generates 'blurrier' bitmap glyph when the + glyph is rendered in any of the anti-aliased modes. See also the note below. + + This flag is implied by FT_LOAD_NO_SCALE. + + +FT_LOAD_RENDER + + Call FT_Render_Glyph after the glyph is loaded. By default, the glyph is + rendered in FT_RENDER_MODE_NORMAL mode. This can be overridden by + FT_LOAD_TARGET_XXX or FT_LOAD_MONOCHROME. + + This flag is unset by FT_LOAD_NO_SCALE. + + +FT_LOAD_NO_BITMAP + + Ignore bitmap strikes when loading. Bitmap-only fonts ignore this flag. + + FT_LOAD_NO_SCALE always sets this flag. + + +FT_LOAD_VERTICAL_LAYOUT + + Load the glyph for vertical text layout. Don't use it as it is problematic + currently. + + +FT_LOAD_FORCE_AUTOHINT + + Indicates that the auto-hinter is preferred over the font's native + hinter. See also the note below. + + +FT_LOAD_CROP_BITMAP + + Indicates that the font driver should crop the loaded bitmap glyph (i.e., + remove all space around its black bits). Not all drivers implement this. + + +FT_LOAD_PEDANTIC + + Indicates that the font driver should perform pedantic verifications during + glyph loading. This is mostly used to detect broken glyphs in fonts. By + default, FreeType tries to handle broken fonts also. + + +FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH + + Indicates that the font driver should ignore the global advance width defined + in the font. By default, that value is used as the advance width for all + glyphs when the face has FT_FACE_FLAG_FIXED_WIDTH set. + + This flag exists for historical reasons (to support buggy CJK fonts). + + +FT_LOAD_NO_RECURSE + + This flag is only used internally. It merely indicates that the font driver + should not load composite glyphs recursively. Instead, it should set the + 'num_subglyph' and 'subglyphs' values of the glyph slot accordingly, and set + 'glyph->format' to FT_GLYPH_FORMAT_COMPOSITE. + + The description of sub-glyphs is not available to client applications for now. + + This flag implies FT_LOAD_NO_SCALE and FT_LOAD_IGNORE_TRANSFORM. + + +FT_LOAD_IGNORE_TRANSFORM + + Indicates that the transform matrix set by FT_Set_Transform should be ignored. + + +FT_LOAD_MONOCHROME + + This flag is used with FT_LOAD_RENDER to indicate that you want to render an + outline glyph to a 1-bit monochrome bitmap glyph, with 8 pixels packed into + each byte of the bitmap data. + + Note that this has no effect on the hinting algorithm used. You should rather + use FT_LOAD_TARGET_MONO so that the monochrome-optimized hinting algorithm is + used. + + +FT_LOAD_LINEAR_DESIGN + + Indicates that the 'linearHoriAdvance' and 'linearVertAdvance' fields of + FT_GlyphSlotRec should be kept in font units. See FT_GlyphSlotRec for + details. + + +FT_LOAD_NO_AUTOHINT + + Disable auto-hinter. See also the note below. +""" + +FT_LOAD_FLAGS = { 'FT_LOAD_DEFAULT' : 0x0, + 'FT_LOAD_NO_SCALE' : 0x1, + 'FT_LOAD_NO_HINTING' : 0x2, + 'FT_LOAD_RENDER' : 0x4, + 'FT_LOAD_NO_BITMAP' : 0x8, + 'FT_LOAD_VERTICAL_LAYOUT' : 0x10, + 'FT_LOAD_FORCE_AUTOHINT' : 0x20, + 'FT_LOAD_CROP_BITMAP' : 0x40, + 'FT_LOAD_PEDANTIC' : 0x80, + 'FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH' : 0x200, + 'FT_LOAD_NO_RECURSE' : 0x400, + 'FT_LOAD_IGNORE_TRANSFORM' : 0x800, + 'FT_LOAD_MONOCHROME' : 0x1000, + 'FT_LOAD_LINEAR_DESIGN' : 0x2000, + 'FT_LOAD_NO_AUTOHINT' : 0x8000 } +globals().update(FT_LOAD_FLAGS) |