< prev index next >

src/java.desktop/share/native/libfreetype/include/freetype/t1tables.h

Print this page

        

*** 1,22 **** ! /***************************************************************************/ ! /* */ ! /* t1tables.h */ ! /* */ ! /* Basic Type 1/Type 2 tables definitions and interface (specification */ ! /* only). */ ! /* */ ! /* Copyright 1996-2018 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 T1TABLES_H_ #define T1TABLES_H_ --- 1,22 ---- ! /**************************************************************************** ! * ! * t1tables.h ! * ! * Basic Type 1/Type 2 tables definitions and interface (specification ! * only). ! * ! * Copyright (C) 1996-2019 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 T1TABLES_H_ #define T1TABLES_H_
*** 32,93 **** FT_BEGIN_HEADER ! /*************************************************************************/ ! /* */ ! /* <Section> */ ! /* type1_tables */ ! /* */ ! /* <Title> */ ! /* Type 1 Tables */ ! /* */ ! /* <Abstract> */ ! /* Type~1 (PostScript) specific font tables. */ ! /* */ ! /* <Description> */ ! /* This section contains the definition of Type 1-specific tables, */ ! /* including structures related to other PostScript font formats. */ ! /* */ ! /* <Order> */ ! /* PS_FontInfoRec */ ! /* PS_FontInfo */ ! /* PS_PrivateRec */ ! /* PS_Private */ ! /* */ ! /* CID_FaceDictRec */ ! /* CID_FaceDict */ ! /* CID_FaceInfoRec */ ! /* CID_FaceInfo */ ! /* */ ! /* FT_Has_PS_Glyph_Names */ ! /* FT_Get_PS_Font_Info */ ! /* FT_Get_PS_Font_Private */ ! /* FT_Get_PS_Font_Value */ ! /* */ ! /* T1_Blend_Flags */ ! /* T1_EncodingType */ ! /* PS_Dict_Keys */ ! /* */ ! /*************************************************************************/ /* Note that we separate font data in PS_FontInfoRec and PS_PrivateRec */ /* structures in order to support Multiple Master fonts. */ ! /*************************************************************************/ ! /* */ ! /* <Struct> */ ! /* PS_FontInfoRec */ ! /* */ ! /* <Description> */ ! /* A structure used to model a Type~1 or Type~2 FontInfo dictionary. */ ! /* Note that for Multiple Master fonts, each instance has its own */ ! /* FontInfo dictionary. */ ! /* */ typedef struct PS_FontInfoRec_ { FT_String* version; FT_String* notice; FT_String* full_name; --- 32,93 ---- FT_BEGIN_HEADER ! /************************************************************************** ! * ! * @section: ! * type1_tables ! * ! * @title: ! * Type 1 Tables ! * ! * @abstract: ! * Type~1-specific font tables. ! * ! * @description: ! * This section contains the definition of Type~1-specific tables, ! * including structures related to other PostScript font formats. ! * ! * @order: ! * PS_FontInfoRec ! * PS_FontInfo ! * PS_PrivateRec ! * PS_Private ! * ! * CID_FaceDictRec ! * CID_FaceDict ! * CID_FaceInfoRec ! * CID_FaceInfo ! * ! * FT_Has_PS_Glyph_Names ! * FT_Get_PS_Font_Info ! * FT_Get_PS_Font_Private ! * FT_Get_PS_Font_Value ! * ! * T1_Blend_Flags ! * T1_EncodingType ! * PS_Dict_Keys ! * ! */ /* Note that we separate font data in PS_FontInfoRec and PS_PrivateRec */ /* structures in order to support Multiple Master fonts. */ ! /************************************************************************** ! * ! * @struct: ! * PS_FontInfoRec ! * ! * @description: ! * A structure used to model a Type~1 or Type~2 FontInfo dictionary. ! * Note that for Multiple Master fonts, each instance has its own ! * FontInfo dictionary. ! */ typedef struct PS_FontInfoRec_ { FT_String* version; FT_String* notice; FT_String* full_name;
*** 99,142 **** FT_UShort underline_thickness; } PS_FontInfoRec; ! /*************************************************************************/ ! /* */ ! /* <Struct> */ ! /* PS_FontInfo */ ! /* */ ! /* <Description> */ ! /* A handle to a @PS_FontInfoRec structure. */ ! /* */ typedef struct PS_FontInfoRec_* PS_FontInfo; ! /*************************************************************************/ ! /* */ ! /* <Struct> */ ! /* T1_FontInfo */ ! /* */ ! /* <Description> */ ! /* This type is equivalent to @PS_FontInfoRec. It is deprecated but */ ! /* kept to maintain source compatibility between various versions of */ ! /* FreeType. */ ! /* */ typedef PS_FontInfoRec T1_FontInfo; ! /*************************************************************************/ ! /* */ ! /* <Struct> */ ! /* PS_PrivateRec */ ! /* */ ! /* <Description> */ ! /* A structure used to model a Type~1 or Type~2 private dictionary. */ ! /* Note that for Multiple Master fonts, each instance has its own */ ! /* Private dictionary. */ ! /* */ typedef struct PS_PrivateRec_ { FT_Int unique_id; FT_Int lenIV; --- 99,141 ---- FT_UShort underline_thickness; } PS_FontInfoRec; ! /************************************************************************** ! * ! * @struct: ! * PS_FontInfo ! * ! * @description: ! * A handle to a @PS_FontInfoRec structure. ! */ typedef struct PS_FontInfoRec_* PS_FontInfo; ! /************************************************************************** ! * ! * @struct: ! * T1_FontInfo ! * ! * @description: ! * This type is equivalent to @PS_FontInfoRec. It is deprecated but kept ! * to maintain source compatibility between various versions of FreeType. ! */ typedef PS_FontInfoRec T1_FontInfo; ! /************************************************************************** ! * ! * @struct: ! * PS_PrivateRec ! * ! * @description: ! * A structure used to model a Type~1 or Type~2 private dictionary. Note ! * that for Multiple Master fonts, each instance has its own Private ! * dictionary. ! */ typedef struct PS_PrivateRec_ { FT_Int unique_id; FT_Int lenIV;
*** 174,233 **** FT_Short min_feature[2]; } PS_PrivateRec; ! /*************************************************************************/ ! /* */ ! /* <Struct> */ ! /* PS_Private */ ! /* */ ! /* <Description> */ ! /* A handle to a @PS_PrivateRec structure. */ ! /* */ typedef struct PS_PrivateRec_* PS_Private; ! /*************************************************************************/ ! /* */ ! /* <Struct> */ ! /* T1_Private */ ! /* */ ! /* <Description> */ ! /* This type is equivalent to @PS_PrivateRec. It is deprecated but */ ! /* kept to maintain source compatibility between various versions of */ ! /* FreeType. */ ! /* */ typedef PS_PrivateRec T1_Private; ! /*************************************************************************/ ! /* */ ! /* <Enum> */ ! /* T1_Blend_Flags */ ! /* */ ! /* <Description> */ ! /* A set of flags used to indicate which fields are present in a */ ! /* given blend dictionary (font info or private). Used to support */ ! /* Multiple Masters fonts. */ ! /* */ ! /* <Values> */ ! /* T1_BLEND_UNDERLINE_POSITION :: */ ! /* T1_BLEND_UNDERLINE_THICKNESS :: */ ! /* T1_BLEND_ITALIC_ANGLE :: */ ! /* T1_BLEND_BLUE_VALUES :: */ ! /* T1_BLEND_OTHER_BLUES :: */ ! /* T1_BLEND_STANDARD_WIDTH :: */ ! /* T1_BLEND_STANDARD_HEIGHT :: */ ! /* T1_BLEND_STEM_SNAP_WIDTHS :: */ ! /* T1_BLEND_STEM_SNAP_HEIGHTS :: */ ! /* T1_BLEND_BLUE_SCALE :: */ ! /* T1_BLEND_BLUE_SHIFT :: */ ! /* T1_BLEND_FAMILY_BLUES :: */ ! /* T1_BLEND_FAMILY_OTHER_BLUES :: */ ! /* T1_BLEND_FORCE_BOLD :: */ ! /* */ typedef enum T1_Blend_Flags_ { /* required fields in a FontInfo blend dictionary */ T1_BLEND_UNDERLINE_POSITION = 0, T1_BLEND_UNDERLINE_THICKNESS, --- 173,231 ---- FT_Short min_feature[2]; } PS_PrivateRec; ! /************************************************************************** ! * ! * @struct: ! * PS_Private ! * ! * @description: ! * A handle to a @PS_PrivateRec structure. ! */ typedef struct PS_PrivateRec_* PS_Private; ! /************************************************************************** ! * ! * @struct: ! * T1_Private ! * ! * @description: ! * This type is equivalent to @PS_PrivateRec. It is deprecated but kept ! * to maintain source compatibility between various versions of FreeType. ! */ typedef PS_PrivateRec T1_Private; ! /************************************************************************** ! * ! * @enum: ! * T1_Blend_Flags ! * ! * @description: ! * A set of flags used to indicate which fields are present in a given ! * blend dictionary (font info or private). Used to support Multiple ! * Masters fonts. ! * ! * @values: ! * T1_BLEND_UNDERLINE_POSITION :: ! * T1_BLEND_UNDERLINE_THICKNESS :: ! * T1_BLEND_ITALIC_ANGLE :: ! * T1_BLEND_BLUE_VALUES :: ! * T1_BLEND_OTHER_BLUES :: ! * T1_BLEND_STANDARD_WIDTH :: ! * T1_BLEND_STANDARD_HEIGHT :: ! * T1_BLEND_STEM_SNAP_WIDTHS :: ! * T1_BLEND_STEM_SNAP_HEIGHTS :: ! * T1_BLEND_BLUE_SCALE :: ! * T1_BLEND_BLUE_SHIFT :: ! * T1_BLEND_FAMILY_BLUES :: ! * T1_BLEND_FAMILY_OTHER_BLUES :: ! * T1_BLEND_FORCE_BOLD :: ! */ typedef enum T1_Blend_Flags_ { /* required fields in a FontInfo blend dictionary */ T1_BLEND_UNDERLINE_POSITION = 0, T1_BLEND_UNDERLINE_THICKNESS,
*** 250,260 **** } T1_Blend_Flags; /* these constants are deprecated; use the corresponding */ ! /* `T1_Blend_Flags' values instead */ #define t1_blend_underline_position T1_BLEND_UNDERLINE_POSITION #define t1_blend_underline_thickness T1_BLEND_UNDERLINE_THICKNESS #define t1_blend_italic_angle T1_BLEND_ITALIC_ANGLE #define t1_blend_blue_values T1_BLEND_BLUE_VALUES #define t1_blend_other_blues T1_BLEND_OTHER_BLUES --- 248,258 ---- } T1_Blend_Flags; /* these constants are deprecated; use the corresponding */ ! /* `T1_Blend_Flags` values instead */ #define t1_blend_underline_position T1_BLEND_UNDERLINE_POSITION #define t1_blend_underline_thickness T1_BLEND_UNDERLINE_THICKNESS #define t1_blend_italic_angle T1_BLEND_ITALIC_ANGLE #define t1_blend_blue_values T1_BLEND_BLUE_VALUES #define t1_blend_other_blues T1_BLEND_OTHER_BLUES
*** 328,354 **** /* backward compatible definition */ typedef PS_BlendRec T1_Blend; ! /*************************************************************************/ ! /* */ ! /* <Struct> */ ! /* CID_FaceDictRec */ ! /* */ ! /* <Description> */ ! /* A structure used to represent data in a CID top-level dictionary. */ ! /* */ typedef struct CID_FaceDictRec_ { PS_PrivateRec private_dict; FT_UInt len_buildchar; FT_Fixed forcebold_threshold; FT_Pos stroke_width; ! FT_Fixed expansion_factor; ! FT_Byte paint_type; FT_Byte font_type; FT_Matrix font_matrix; FT_Vector font_offset; --- 326,361 ---- /* backward compatible definition */ typedef PS_BlendRec T1_Blend; ! /************************************************************************** ! * ! * @struct: ! * CID_FaceDictRec ! * ! * @description: ! * A structure used to represent data in a CID top-level dictionary. In ! * most cases, they are part of the font's '/FDArray' array. Within a ! * CID font file, such (internal) subfont dictionaries are enclosed by ! * '%ADOBeginFontDict' and '%ADOEndFontDict' comments. ! * ! * Note that `CID_FaceDictRec` misses a field for the '/FontName' ! * keyword, specifying the subfont's name (the top-level font name is ! * given by the '/CIDFontName' keyword). This is an oversight, but it ! * doesn't limit the 'cid' font module's functionality because FreeType ! * neither needs this entry nor gives access to CID subfonts. ! */ typedef struct CID_FaceDictRec_ { PS_PrivateRec private_dict; FT_UInt len_buildchar; FT_Fixed forcebold_threshold; FT_Pos stroke_width; ! FT_Fixed expansion_factor; /* this is a duplicate of */ ! /* `private_dict->expansion_factor' */ FT_Byte paint_type; FT_Byte font_type; FT_Matrix font_matrix; FT_Vector font_offset;
*** 357,398 **** FT_Int sd_bytes; } CID_FaceDictRec; ! /*************************************************************************/ ! /* */ ! /* <Struct> */ ! /* CID_FaceDict */ ! /* */ ! /* <Description> */ ! /* A handle to a @CID_FaceDictRec structure. */ ! /* */ typedef struct CID_FaceDictRec_* CID_FaceDict; ! /*************************************************************************/ ! /* */ ! /* <Struct> */ ! /* CID_FontDict */ ! /* */ ! /* <Description> */ ! /* This type is equivalent to @CID_FaceDictRec. It is deprecated but */ ! /* kept to maintain source compatibility between various versions of */ ! /* FreeType. */ ! /* */ typedef CID_FaceDictRec CID_FontDict; ! /*************************************************************************/ ! /* */ ! /* <Struct> */ ! /* CID_FaceInfoRec */ ! /* */ ! /* <Description> */ ! /* A structure used to represent CID Face information. */ ! /* */ typedef struct CID_FaceInfoRec_ { FT_String* cid_font_name; FT_Fixed cid_version; FT_Int cid_font_type; --- 364,405 ---- FT_Int sd_bytes; } CID_FaceDictRec; ! /************************************************************************** ! * ! * @struct: ! * CID_FaceDict ! * ! * @description: ! * A handle to a @CID_FaceDictRec structure. ! */ typedef struct CID_FaceDictRec_* CID_FaceDict; ! /************************************************************************** ! * ! * @struct: ! * CID_FontDict ! * ! * @description: ! * This type is equivalent to @CID_FaceDictRec. It is deprecated but ! * kept to maintain source compatibility between various versions of ! * FreeType. ! */ typedef CID_FaceDictRec CID_FontDict; ! /************************************************************************** ! * ! * @struct: ! * CID_FaceInfoRec ! * ! * @description: ! * A structure used to represent CID Face information. ! */ typedef struct CID_FaceInfoRec_ { FT_String* cid_font_name; FT_Fixed cid_version; FT_Int cid_font_type;
*** 419,462 **** FT_ULong data_offset; } CID_FaceInfoRec; ! /*************************************************************************/ ! /* */ ! /* <Struct> */ ! /* CID_FaceInfo */ ! /* */ ! /* <Description> */ ! /* A handle to a @CID_FaceInfoRec structure. */ ! /* */ typedef struct CID_FaceInfoRec_* CID_FaceInfo; ! /*************************************************************************/ ! /* */ ! /* <Struct> */ ! /* CID_Info */ ! /* */ ! /* <Description> */ ! /* This type is equivalent to @CID_FaceInfoRec. It is deprecated but */ ! /* kept to maintain source compatibility between various versions of */ ! /* FreeType. */ ! /* */ typedef CID_FaceInfoRec CID_Info; ! /************************************************************************ * * @function: * FT_Has_PS_Glyph_Names * * @description: ! * Return true if a given face provides reliable PostScript glyph ! * names. This is similar to using the @FT_HAS_GLYPH_NAMES macro, ! * except that certain fonts (mostly TrueType) contain incorrect ! * glyph name tables. * * When this function returns true, the caller is sure that the glyph * names returned by @FT_Get_Glyph_Name are reliable. * * @input: --- 426,467 ---- FT_ULong data_offset; } CID_FaceInfoRec; ! /************************************************************************** ! * ! * @struct: ! * CID_FaceInfo ! * ! * @description: ! * A handle to a @CID_FaceInfoRec structure. ! */ typedef struct CID_FaceInfoRec_* CID_FaceInfo; ! /************************************************************************** ! * ! * @struct: ! * CID_Info ! * ! * @description: ! * This type is equivalent to @CID_FaceInfoRec. It is deprecated but kept ! * to maintain source compatibility between various versions of FreeType. ! */ typedef CID_FaceInfoRec CID_Info; ! /************************************************************************** * * @function: * FT_Has_PS_Glyph_Names * * @description: ! * Return true if a given face provides reliable PostScript glyph names. ! * This is similar to using the @FT_HAS_GLYPH_NAMES macro, except that ! * certain fonts (mostly TrueType) contain incorrect glyph name tables. * * When this function returns true, the caller is sure that the glyph * names returned by @FT_Get_Glyph_Name are reliable. * * @input:
*** 469,479 **** */ FT_EXPORT( FT_Int ) FT_Has_PS_Glyph_Names( FT_Face face ); ! /************************************************************************ * * @function: * FT_Get_PS_Font_Info * * @description: --- 474,484 ---- */ FT_EXPORT( FT_Int ) FT_Has_PS_Glyph_Names( FT_Face face ); ! /************************************************************************** * * @function: * FT_Get_PS_Font_Info * * @description:
*** 490,513 **** * * @return: * FreeType error code. 0~means success. * * @note: ! * String pointers within the @PS_FontInfoRec structure are owned by ! * the face and don't need to be freed by the caller. Missing entries ! * in the font's FontInfo dictionary are represented by NULL pointers. * * If the font's format is not PostScript-based, this function will ! * return the `FT_Err_Invalid_Argument' error code. * */ FT_EXPORT( FT_Error ) FT_Get_PS_Font_Info( FT_Face face, PS_FontInfo afont_info ); ! /************************************************************************ * * @function: * FT_Get_PS_Font_Private * * @description: --- 495,518 ---- * * @return: * FreeType error code. 0~means success. * * @note: ! * String pointers within the @PS_FontInfoRec structure are owned by the ! * face and don't need to be freed by the caller. Missing entries in ! * the font's FontInfo dictionary are represented by `NULL` pointers. * * If the font's format is not PostScript-based, this function will ! * return the `FT_Err_Invalid_Argument` error code. * */ FT_EXPORT( FT_Error ) FT_Get_PS_Font_Info( FT_Face face, PS_FontInfo afont_info ); ! /************************************************************************** * * @function: * FT_Get_PS_Font_Private * * @description:
*** 528,564 **** * @note: * The string pointers within the @PS_PrivateRec structure are owned by * the face and don't need to be freed by the caller. * * If the font's format is not PostScript-based, this function returns ! * the `FT_Err_Invalid_Argument' error code. * */ FT_EXPORT( FT_Error ) FT_Get_PS_Font_Private( FT_Face face, PS_Private afont_private ); ! /*************************************************************************/ ! /* */ ! /* <Enum> */ ! /* T1_EncodingType */ ! /* */ ! /* <Description> */ ! /* An enumeration describing the `Encoding' entry in a Type 1 */ ! /* dictionary. */ ! /* */ ! /* <Values> */ ! /* T1_ENCODING_TYPE_NONE :: */ ! /* T1_ENCODING_TYPE_ARRAY :: */ ! /* T1_ENCODING_TYPE_STANDARD :: */ ! /* T1_ENCODING_TYPE_ISOLATIN1 :: */ ! /* T1_ENCODING_TYPE_EXPERT :: */ ! /* */ ! /* <Since> */ ! /* 2.4.8 */ ! /* */ typedef enum T1_EncodingType_ { T1_ENCODING_TYPE_NONE = 0, T1_ENCODING_TYPE_ARRAY, T1_ENCODING_TYPE_STANDARD, --- 533,568 ---- * @note: * The string pointers within the @PS_PrivateRec structure are owned by * the face and don't need to be freed by the caller. * * If the font's format is not PostScript-based, this function returns ! * the `FT_Err_Invalid_Argument` error code. * */ FT_EXPORT( FT_Error ) FT_Get_PS_Font_Private( FT_Face face, PS_Private afont_private ); ! /************************************************************************** ! * ! * @enum: ! * T1_EncodingType ! * ! * @description: ! * An enumeration describing the 'Encoding' entry in a Type 1 dictionary. ! * ! * @values: ! * T1_ENCODING_TYPE_NONE :: ! * T1_ENCODING_TYPE_ARRAY :: ! * T1_ENCODING_TYPE_STANDARD :: ! * T1_ENCODING_TYPE_ISOLATIN1 :: ! * T1_ENCODING_TYPE_EXPERT :: ! * ! * @since: ! * 2.4.8 ! */ typedef enum T1_EncodingType_ { T1_ENCODING_TYPE_NONE = 0, T1_ENCODING_TYPE_ARRAY, T1_ENCODING_TYPE_STANDARD,
*** 566,635 **** T1_ENCODING_TYPE_EXPERT } T1_EncodingType; ! /*************************************************************************/ ! /* */ ! /* <Enum> */ ! /* PS_Dict_Keys */ ! /* */ ! /* <Description> */ ! /* An enumeration used in calls to @FT_Get_PS_Font_Value to identify */ ! /* the Type~1 dictionary entry to retrieve. */ ! /* */ ! /* <Values> */ ! /* PS_DICT_FONT_TYPE :: */ ! /* PS_DICT_FONT_MATRIX :: */ ! /* PS_DICT_FONT_BBOX :: */ ! /* PS_DICT_PAINT_TYPE :: */ ! /* PS_DICT_FONT_NAME :: */ ! /* PS_DICT_UNIQUE_ID :: */ ! /* PS_DICT_NUM_CHAR_STRINGS :: */ ! /* PS_DICT_CHAR_STRING_KEY :: */ ! /* PS_DICT_CHAR_STRING :: */ ! /* PS_DICT_ENCODING_TYPE :: */ ! /* PS_DICT_ENCODING_ENTRY :: */ ! /* PS_DICT_NUM_SUBRS :: */ ! /* PS_DICT_SUBR :: */ ! /* PS_DICT_STD_HW :: */ ! /* PS_DICT_STD_VW :: */ ! /* PS_DICT_NUM_BLUE_VALUES :: */ ! /* PS_DICT_BLUE_VALUE :: */ ! /* PS_DICT_BLUE_FUZZ :: */ ! /* PS_DICT_NUM_OTHER_BLUES :: */ ! /* PS_DICT_OTHER_BLUE :: */ ! /* PS_DICT_NUM_FAMILY_BLUES :: */ ! /* PS_DICT_FAMILY_BLUE :: */ ! /* PS_DICT_NUM_FAMILY_OTHER_BLUES :: */ ! /* PS_DICT_FAMILY_OTHER_BLUE :: */ ! /* PS_DICT_BLUE_SCALE :: */ ! /* PS_DICT_BLUE_SHIFT :: */ ! /* PS_DICT_NUM_STEM_SNAP_H :: */ ! /* PS_DICT_STEM_SNAP_H :: */ ! /* PS_DICT_NUM_STEM_SNAP_V :: */ ! /* PS_DICT_STEM_SNAP_V :: */ ! /* PS_DICT_FORCE_BOLD :: */ ! /* PS_DICT_RND_STEM_UP :: */ ! /* PS_DICT_MIN_FEATURE :: */ ! /* PS_DICT_LEN_IV :: */ ! /* PS_DICT_PASSWORD :: */ ! /* PS_DICT_LANGUAGE_GROUP :: */ ! /* PS_DICT_VERSION :: */ ! /* PS_DICT_NOTICE :: */ ! /* PS_DICT_FULL_NAME :: */ ! /* PS_DICT_FAMILY_NAME :: */ ! /* PS_DICT_WEIGHT :: */ ! /* PS_DICT_IS_FIXED_PITCH :: */ ! /* PS_DICT_UNDERLINE_POSITION :: */ ! /* PS_DICT_UNDERLINE_THICKNESS :: */ ! /* PS_DICT_FS_TYPE :: */ ! /* PS_DICT_ITALIC_ANGLE :: */ ! /* */ ! /* <Since> */ ! /* 2.4.8 */ ! /* */ typedef enum PS_Dict_Keys_ { /* conventionally in the font dictionary */ PS_DICT_FONT_TYPE, /* FT_Byte */ PS_DICT_FONT_MATRIX, /* FT_Fixed */ --- 570,639 ---- T1_ENCODING_TYPE_EXPERT } T1_EncodingType; ! /************************************************************************** ! * ! * @enum: ! * PS_Dict_Keys ! * ! * @description: ! * An enumeration used in calls to @FT_Get_PS_Font_Value to identify the ! * Type~1 dictionary entry to retrieve. ! * ! * @values: ! * PS_DICT_FONT_TYPE :: ! * PS_DICT_FONT_MATRIX :: ! * PS_DICT_FONT_BBOX :: ! * PS_DICT_PAINT_TYPE :: ! * PS_DICT_FONT_NAME :: ! * PS_DICT_UNIQUE_ID :: ! * PS_DICT_NUM_CHAR_STRINGS :: ! * PS_DICT_CHAR_STRING_KEY :: ! * PS_DICT_CHAR_STRING :: ! * PS_DICT_ENCODING_TYPE :: ! * PS_DICT_ENCODING_ENTRY :: ! * PS_DICT_NUM_SUBRS :: ! * PS_DICT_SUBR :: ! * PS_DICT_STD_HW :: ! * PS_DICT_STD_VW :: ! * PS_DICT_NUM_BLUE_VALUES :: ! * PS_DICT_BLUE_VALUE :: ! * PS_DICT_BLUE_FUZZ :: ! * PS_DICT_NUM_OTHER_BLUES :: ! * PS_DICT_OTHER_BLUE :: ! * PS_DICT_NUM_FAMILY_BLUES :: ! * PS_DICT_FAMILY_BLUE :: ! * PS_DICT_NUM_FAMILY_OTHER_BLUES :: ! * PS_DICT_FAMILY_OTHER_BLUE :: ! * PS_DICT_BLUE_SCALE :: ! * PS_DICT_BLUE_SHIFT :: ! * PS_DICT_NUM_STEM_SNAP_H :: ! * PS_DICT_STEM_SNAP_H :: ! * PS_DICT_NUM_STEM_SNAP_V :: ! * PS_DICT_STEM_SNAP_V :: ! * PS_DICT_FORCE_BOLD :: ! * PS_DICT_RND_STEM_UP :: ! * PS_DICT_MIN_FEATURE :: ! * PS_DICT_LEN_IV :: ! * PS_DICT_PASSWORD :: ! * PS_DICT_LANGUAGE_GROUP :: ! * PS_DICT_VERSION :: ! * PS_DICT_NOTICE :: ! * PS_DICT_FULL_NAME :: ! * PS_DICT_FAMILY_NAME :: ! * PS_DICT_WEIGHT :: ! * PS_DICT_IS_FIXED_PITCH :: ! * PS_DICT_UNDERLINE_POSITION :: ! * PS_DICT_UNDERLINE_THICKNESS :: ! * PS_DICT_FS_TYPE :: ! * PS_DICT_ITALIC_ANGLE :: ! * ! * @since: ! * 2.4.8 ! */ typedef enum PS_Dict_Keys_ { /* conventionally in the font dictionary */ PS_DICT_FONT_TYPE, /* FT_Byte */ PS_DICT_FONT_MATRIX, /* FT_Fixed */
*** 685,695 **** PS_DICT_MAX = PS_DICT_ITALIC_ANGLE } PS_Dict_Keys; ! /************************************************************************ * * @function: * FT_Get_PS_Font_Value * * @description: --- 689,699 ---- PS_DICT_MAX = PS_DICT_ITALIC_ANGLE } PS_Dict_Keys; ! /************************************************************************** * * @function: * FT_Get_PS_Font_Value * * @description:
*** 714,755 **** * @output: * value :: * The value matching the above key, if it exists. * * @return: ! * The amount of memory (in bytes) required to hold the requested ! * value (if it exists, -1 otherwise). * * @note: * The values returned are not pointers into the internal structures of ! * the face, but are `fresh' copies, so that the memory containing them * belongs to the calling application. This also enforces the ! * `read-only' nature of these values, i.e., this function cannot be * used to manipulate the face. * ! * `value' is a void pointer because the values returned can be of * various types. * ! * If either `value' is NULL or `value_len' is too small, just the * required memory size for the requested entry is returned. * ! * The `idx' parameter is used, not only to retrieve elements of, for * example, the FontMatrix or FontBBox, but also to retrieve name keys * from the CharStrings dictionary, and the charstrings themselves. It * is ignored for atomic values. * ! * PS_DICT_BLUE_SCALE returns a value that is scaled up by 1000. To ! * get the value as in the font stream, you need to divide by ! * 65536000.0 (to remove the FT_Fixed scale, and the x1000 scale). * * IMPORTANT: Only key/value pairs read by the FreeType interpreter can ! * be retrieved. So, for example, PostScript procedures such as NP, ! * ND, and RD are not available. Arbitrary keys are, obviously, not be * available either. * * If the font's format is not PostScript-based, this function returns ! * the `FT_Err_Invalid_Argument' error code. * * @since: * 2.4.8 * */ --- 718,759 ---- * @output: * value :: * The value matching the above key, if it exists. * * @return: ! * The amount of memory (in bytes) required to hold the requested value ! * (if it exists, -1 otherwise). * * @note: * The values returned are not pointers into the internal structures of ! * the face, but are 'fresh' copies, so that the memory containing them * belongs to the calling application. This also enforces the ! * 'read-only' nature of these values, i.e., this function cannot be * used to manipulate the face. * ! * `value` is a void pointer because the values returned can be of * various types. * ! * If either `value` is `NULL` or `value_len` is too small, just the * required memory size for the requested entry is returned. * ! * The `idx` parameter is used, not only to retrieve elements of, for * example, the FontMatrix or FontBBox, but also to retrieve name keys * from the CharStrings dictionary, and the charstrings themselves. It * is ignored for atomic values. * ! * `PS_DICT_BLUE_SCALE` returns a value that is scaled up by 1000. To ! * get the value as in the font stream, you need to divide by 65536000.0 ! * (to remove the FT_Fixed scale, and the x1000 scale). * * IMPORTANT: Only key/value pairs read by the FreeType interpreter can ! * be retrieved. So, for example, PostScript procedures such as NP, ND, ! * and RD are not available. Arbitrary keys are, obviously, not be * available either. * * If the font's format is not PostScript-based, this function returns ! * the `FT_Err_Invalid_Argument` error code. * * @since: * 2.4.8 * */
< prev index next >