123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218 |
- /****************************************************************************
- *
- * ftparams.h
- *
- * FreeType API for possible FT_Parameter tags (specification only).
- *
- * Copyright (C) 2017-2023 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.
- *
- */
- #ifndef FTPARAMS_H_
- #define FTPARAMS_H_
- #include <freetype/freetype.h>
- #ifdef FREETYPE_H
- #error "freetype.h of FreeType 1 has been loaded!"
- #error "Please fix the directory search order for header files"
- #error "so that freetype.h of FreeType 2 is found first."
- #endif
- FT_BEGIN_HEADER
- /**************************************************************************
- *
- * @section:
- * parameter_tags
- *
- * @title:
- * Parameter Tags
- *
- * @abstract:
- * Macros for driver property and font loading parameter tags.
- *
- * @description:
- * This section contains macros for the @FT_Parameter structure that are
- * used with various functions to activate some special functionality or
- * different behaviour of various components of FreeType.
- *
- */
- /**************************************************************************
- *
- * @enum:
- * FT_PARAM_TAG_IGNORE_TYPOGRAPHIC_FAMILY
- *
- * @description:
- * A tag for @FT_Parameter to make @FT_Open_Face ignore typographic
- * family names in the 'name' table (introduced in OpenType version 1.4).
- * Use this for backward compatibility with legacy systems that have a
- * four-faces-per-family restriction.
- *
- * @since:
- * 2.8
- *
- */
- #define FT_PARAM_TAG_IGNORE_TYPOGRAPHIC_FAMILY \
- FT_MAKE_TAG( 'i', 'g', 'p', 'f' )
- /* this constant is deprecated */
- #define FT_PARAM_TAG_IGNORE_PREFERRED_FAMILY \
- FT_PARAM_TAG_IGNORE_TYPOGRAPHIC_FAMILY
- /**************************************************************************
- *
- * @enum:
- * FT_PARAM_TAG_IGNORE_TYPOGRAPHIC_SUBFAMILY
- *
- * @description:
- * A tag for @FT_Parameter to make @FT_Open_Face ignore typographic
- * subfamily names in the 'name' table (introduced in OpenType version
- * 1.4). Use this for backward compatibility with legacy systems that
- * have a four-faces-per-family restriction.
- *
- * @since:
- * 2.8
- *
- */
- #define FT_PARAM_TAG_IGNORE_TYPOGRAPHIC_SUBFAMILY \
- FT_MAKE_TAG( 'i', 'g', 'p', 's' )
- /* this constant is deprecated */
- #define FT_PARAM_TAG_IGNORE_PREFERRED_SUBFAMILY \
- FT_PARAM_TAG_IGNORE_TYPOGRAPHIC_SUBFAMILY
- /**************************************************************************
- *
- * @enum:
- * FT_PARAM_TAG_INCREMENTAL
- *
- * @description:
- * An @FT_Parameter tag to be used with @FT_Open_Face to indicate
- * incremental glyph loading.
- *
- */
- #define FT_PARAM_TAG_INCREMENTAL \
- FT_MAKE_TAG( 'i', 'n', 'c', 'r' )
- /**************************************************************************
- *
- * @enum:
- * FT_PARAM_TAG_IGNORE_SBIX
- *
- * @description:
- * A tag for @FT_Parameter to make @FT_Open_Face ignore an 'sbix' table
- * while loading a font. Use this if @FT_FACE_FLAG_SBIX is set and you
- * want to access the outline glyphs in the font.
- *
- */
- #define FT_PARAM_TAG_IGNORE_SBIX \
- FT_MAKE_TAG( 'i', 's', 'b', 'x' )
- /**************************************************************************
- *
- * @enum:
- * FT_PARAM_TAG_LCD_FILTER_WEIGHTS
- *
- * @description:
- * An @FT_Parameter tag to be used with @FT_Face_Properties. The
- * corresponding argument specifies the five LCD filter weights for a
- * given face (if using @FT_LOAD_TARGET_LCD, for example), overriding the
- * global default values or the values set up with
- * @FT_Library_SetLcdFilterWeights.
- *
- * @since:
- * 2.8
- *
- */
- #define FT_PARAM_TAG_LCD_FILTER_WEIGHTS \
- FT_MAKE_TAG( 'l', 'c', 'd', 'f' )
- /**************************************************************************
- *
- * @enum:
- * FT_PARAM_TAG_RANDOM_SEED
- *
- * @description:
- * An @FT_Parameter tag to be used with @FT_Face_Properties. The
- * corresponding 32bit signed integer argument overrides the font
- * driver's random seed value with a face-specific one; see @random-seed.
- *
- * @since:
- * 2.8
- *
- */
- #define FT_PARAM_TAG_RANDOM_SEED \
- FT_MAKE_TAG( 's', 'e', 'e', 'd' )
- /**************************************************************************
- *
- * @enum:
- * FT_PARAM_TAG_STEM_DARKENING
- *
- * @description:
- * An @FT_Parameter tag to be used with @FT_Face_Properties. The
- * corresponding Boolean argument specifies whether to apply stem
- * darkening, overriding the global default values or the values set up
- * with @FT_Property_Set (see @no-stem-darkening).
- *
- * This is a passive setting that only takes effect if the font driver or
- * autohinter honors it, which the CFF, Type~1, and CID drivers always
- * do, but the autohinter only in 'light' hinting mode (as of version
- * 2.9).
- *
- * @since:
- * 2.8
- *
- */
- #define FT_PARAM_TAG_STEM_DARKENING \
- FT_MAKE_TAG( 'd', 'a', 'r', 'k' )
- /**************************************************************************
- *
- * @enum:
- * FT_PARAM_TAG_UNPATENTED_HINTING
- *
- * @description:
- * Deprecated, no effect.
- *
- * Previously: A constant used as the tag of an @FT_Parameter structure
- * to indicate that unpatented methods only should be used by the
- * TrueType bytecode interpreter for a typeface opened by @FT_Open_Face.
- *
- */
- #define FT_PARAM_TAG_UNPATENTED_HINTING \
- FT_MAKE_TAG( 'u', 'n', 'p', 'a' )
- /* */
- FT_END_HEADER
- #endif /* FTPARAMS_H_ */
- /* END */
|