/
usr
/
include
/
freetype2
/
freetype
/
/usr/include/freetype2/freetype
mkdir
upload
Name
Size
Mode
Actions
config/
-
0755
rm
freetype.h
165119
0644
edit
dl
rm
ftadvanc.h
5470
0644
edit
dl
rm
ftbbox.h
2638
0644
edit
dl
rm
ftbdf.h
5322
0644
edit
dl
rm
ftbitmap.h
9051
0644
edit
dl
rm
ftbzip2.h
2786
0644
edit
dl
rm
ftcache.h
33858
0644
edit
dl
rm
ftchapters.h
2510
0644
edit
dl
rm
ftcid.h
4022
0644
edit
dl
rm
ftcolor.h
8913
0644
edit
dl
rm
ftdriver.h
47220
0644
edit
dl
rm
fterrdef.h
12336
0644
edit
dl
rm
fterrors.h
9291
0644
edit
dl
rm
ftfntfmt.h
2213
0644
edit
dl
rm
ftgasp.h
4138
0644
edit
dl
rm
ftglyph.h
18491
0644
edit
dl
rm
ftgxval.h
10625
0644
edit
dl
rm
ftgzip.h
4211
0644
edit
dl
rm
ftimage.h
39895
0644
edit
dl
rm
ftincrem.h
10310
0644
edit
dl
rm
ftlcdfil.h
11739
0644
edit
dl
rm
ftlist.h
7100
0644
edit
dl
rm
ftlzw.h
2768
0644
edit
dl
rm
ftmac.h
7771
0644
edit
dl
rm
ftmm.h
21793
0644
edit
dl
rm
ftmodapi.h
21777
0644
edit
dl
rm
ftmoderr.h
6601
0644
edit
dl
rm
ftotval.h
5346
0644
edit
dl
rm
ftoutln.h
17870
0644
edit
dl
rm
ftparams.h
5592
0644
edit
dl
rm
ftpfr.h
4910
0644
edit
dl
rm
ftrender.h
6625
0644
edit
dl
rm
ftsizes.h
4288
0644
edit
dl
rm
ftsnames.h
7730
0644
edit
dl
rm
ftstroke.h
21773
0644
edit
dl
rm
ftsynth.h
3362
0644
edit
dl
rm
ftsystem.h
8518
0644
edit
dl
rm
fttrigon.h
7411
0644
edit
dl
rm
fttypes.h
14487
0644
edit
dl
rm
ftwinfnt.h
7966
0644
edit
dl
rm
t1tables.h
22829
0644
edit
dl
rm
ttnameid.h
58769
0644
edit
dl
rm
tttables.h
25231
0644
edit
dl
rm
tttags.h
5092
0644
edit
dl
rm
Edit:
/usr/include/freetype2/freetype/ftgxval.h
(10625B)
/**************************************************************************** * * ftgxval.h * * FreeType API for validating TrueTypeGX/AAT tables (specification). * * Copyright (C) 2004-2020 by * Masatake YAMATO, Redhat K.K, * 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. * */ /**************************************************************************** * * gxvalid is derived from both gxlayout module and otvalid module. * Development of gxlayout is supported by the Information-technology * Promotion Agency(IPA), Japan. * */ #ifndef FTGXVAL_H_ #define FTGXVAL_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: * gx_validation * * @title: * TrueTypeGX/AAT Validation * * @abstract: * An API to validate TrueTypeGX/AAT tables. * * @description: * This section contains the declaration of functions to validate some * TrueTypeGX tables (feat, mort, morx, bsln, just, kern, opbd, trak, * prop, lcar). * * @order: * FT_TrueTypeGX_Validate * FT_TrueTypeGX_Free * * FT_ClassicKern_Validate * FT_ClassicKern_Free * * FT_VALIDATE_GX_LENGTH * FT_VALIDATE_GXXXX * FT_VALIDATE_CKERNXXX * */ /************************************************************************** * * * Warning: Use `FT_VALIDATE_XXX` to validate a table. * Following definitions are for gxvalid developers. * * */ #define FT_VALIDATE_feat_INDEX 0 #define FT_VALIDATE_mort_INDEX 1 #define FT_VALIDATE_morx_INDEX 2 #define FT_VALIDATE_bsln_INDEX 3 #define FT_VALIDATE_just_INDEX 4 #define FT_VALIDATE_kern_INDEX 5 #define FT_VALIDATE_opbd_INDEX 6 #define FT_VALIDATE_trak_INDEX 7 #define FT_VALIDATE_prop_INDEX 8 #define FT_VALIDATE_lcar_INDEX 9 #define FT_VALIDATE_GX_LAST_INDEX FT_VALIDATE_lcar_INDEX /************************************************************************** * * @macro: * FT_VALIDATE_GX_LENGTH * * @description: * The number of tables checked in this module. Use it as a parameter * for the `table-length` argument of function @FT_TrueTypeGX_Validate. */ #define FT_VALIDATE_GX_LENGTH ( FT_VALIDATE_GX_LAST_INDEX + 1 ) /* */ /* Up to 0x1000 is used by otvalid. Ox2xxx is reserved for feature OT extension. */ #define FT_VALIDATE_GX_START 0x4000 #define FT_VALIDATE_GX_BITFIELD( tag ) \ ( FT_VALIDATE_GX_START << FT_VALIDATE_##tag##_INDEX ) /************************************************************************** * * @enum: * FT_VALIDATE_GXXXX * * @description: * A list of bit-field constants used with @FT_TrueTypeGX_Validate to * indicate which TrueTypeGX/AAT Type tables should be validated. * * @values: * FT_VALIDATE_feat :: * Validate 'feat' table. * * FT_VALIDATE_mort :: * Validate 'mort' table. * * FT_VALIDATE_morx :: * Validate 'morx' table. * * FT_VALIDATE_bsln :: * Validate 'bsln' table. * * FT_VALIDATE_just :: * Validate 'just' table. * * FT_VALIDATE_kern :: * Validate 'kern' table. * * FT_VALIDATE_opbd :: * Validate 'opbd' table. * * FT_VALIDATE_trak :: * Validate 'trak' table. * * FT_VALIDATE_prop :: * Validate 'prop' table. * * FT_VALIDATE_lcar :: * Validate 'lcar' table. * * FT_VALIDATE_GX :: * Validate all TrueTypeGX tables (feat, mort, morx, bsln, just, kern, * opbd, trak, prop and lcar). * */ #define FT_VALIDATE_feat FT_VALIDATE_GX_BITFIELD( feat ) #define FT_VALIDATE_mort FT_VALIDATE_GX_BITFIELD( mort ) #define FT_VALIDATE_morx FT_VALIDATE_GX_BITFIELD( morx ) #define FT_VALIDATE_bsln FT_VALIDATE_GX_BITFIELD( bsln ) #define FT_VALIDATE_just FT_VALIDATE_GX_BITFIELD( just ) #define FT_VALIDATE_kern FT_VALIDATE_GX_BITFIELD( kern ) #define FT_VALIDATE_opbd FT_VALIDATE_GX_BITFIELD( opbd ) #define FT_VALIDATE_trak FT_VALIDATE_GX_BITFIELD( trak ) #define FT_VALIDATE_prop FT_VALIDATE_GX_BITFIELD( prop ) #define FT_VALIDATE_lcar FT_VALIDATE_GX_BITFIELD( lcar ) #define FT_VALIDATE_GX ( FT_VALIDATE_feat | \ FT_VALIDATE_mort | \ FT_VALIDATE_morx | \ FT_VALIDATE_bsln | \ FT_VALIDATE_just | \ FT_VALIDATE_kern | \ FT_VALIDATE_opbd | \ FT_VALIDATE_trak | \ FT_VALIDATE_prop | \ FT_VALIDATE_lcar ) /************************************************************************** * * @function: * FT_TrueTypeGX_Validate * * @description: * Validate various TrueTypeGX tables to assure that all offsets and * indices are valid. The idea is that a higher-level library that * actually does the text layout can access those tables without error * checking (which can be quite time consuming). * * @input: * face :: * A handle to the input face. * * validation_flags :: * A bit field that specifies the tables to be validated. See * @FT_VALIDATE_GXXXX for possible values. * * table_length :: * The size of the `tables` array. Normally, @FT_VALIDATE_GX_LENGTH * should be passed. * * @output: * tables :: * The array where all validated sfnt tables are stored. The array * itself must be allocated by a client. * * @return: * FreeType error code. 0~means success. * * @note: * This function only works with TrueTypeGX fonts, returning an error * otherwise. * * After use, the application should deallocate the buffers pointed to by * each `tables` element, by calling @FT_TrueTypeGX_Free. A `NULL` value * indicates that the table either doesn't exist in the font, the * application hasn't asked for validation, or the validator doesn't have * the ability to validate the sfnt table. */ FT_EXPORT( FT_Error ) FT_TrueTypeGX_Validate( FT_Face face, FT_UInt validation_flags, FT_Bytes tables[FT_VALIDATE_GX_LENGTH], FT_UInt table_length ); /************************************************************************** * * @function: * FT_TrueTypeGX_Free * * @description: * Free the buffer allocated by TrueTypeGX validator. * * @input: * face :: * A handle to the input face. * * table :: * The pointer to the buffer allocated by @FT_TrueTypeGX_Validate. * * @note: * This function must be used to free the buffer allocated by * @FT_TrueTypeGX_Validate only. */ FT_EXPORT( void ) FT_TrueTypeGX_Free( FT_Face face, FT_Bytes table ); /************************************************************************** * * @enum: * FT_VALIDATE_CKERNXXX * * @description: * A list of bit-field constants used with @FT_ClassicKern_Validate to * indicate the classic kern dialect or dialects. If the selected type * doesn't fit, @FT_ClassicKern_Validate regards the table as invalid. * * @values: * FT_VALIDATE_MS :: * Handle the 'kern' table as a classic Microsoft kern table. * * FT_VALIDATE_APPLE :: * Handle the 'kern' table as a classic Apple kern table. * * FT_VALIDATE_CKERN :: * Handle the 'kern' as either classic Apple or Microsoft kern table. */ #define FT_VALIDATE_MS ( FT_VALIDATE_GX_START << 0 ) #define FT_VALIDATE_APPLE ( FT_VALIDATE_GX_START << 1 ) #define FT_VALIDATE_CKERN ( FT_VALIDATE_MS | FT_VALIDATE_APPLE ) /************************************************************************** * * @function: * FT_ClassicKern_Validate * * @description: * Validate classic (16-bit format) kern table to assure that the * offsets and indices are valid. The idea is that a higher-level * library that actually does the text layout can access those tables * without error checking (which can be quite time consuming). * * The 'kern' table validator in @FT_TrueTypeGX_Validate deals with both * the new 32-bit format and the classic 16-bit format, while * FT_ClassicKern_Validate only supports the classic 16-bit format. * * @input: * face :: * A handle to the input face. * * validation_flags :: * A bit field that specifies the dialect to be validated. See * @FT_VALIDATE_CKERNXXX for possible values. * * @output: * ckern_table :: * A pointer to the kern table. * * @return: * FreeType error code. 0~means success. * * @note: * After use, the application should deallocate the buffers pointed to by * `ckern_table`, by calling @FT_ClassicKern_Free. A `NULL` value * indicates that the table doesn't exist in the font. */ FT_EXPORT( FT_Error ) FT_ClassicKern_Validate( FT_Face face, FT_UInt validation_flags, FT_Bytes *ckern_table ); /************************************************************************** * * @function: * FT_ClassicKern_Free * * @description: * Free the buffer allocated by classic Kern validator. * * @input: * face :: * A handle to the input face. * * table :: * The pointer to the buffer that is allocated by * @FT_ClassicKern_Validate. * * @note: * This function must be used to free the buffer allocated by * @FT_ClassicKern_Validate only. */ FT_EXPORT( void ) FT_ClassicKern_Free( FT_Face face, FT_Bytes table ); /* */ FT_END_HEADER #endif /* FTGXVAL_H_ */ /* END */
Save
cmd:
run