94 lines
3.8 KiB
C
94 lines
3.8 KiB
C
/***************************************************************************/
|
|
/* */
|
|
/* gxvmort.h */
|
|
/* */
|
|
/* TrueTypeGX/AAT common definition for mort table (specification). */
|
|
/* */
|
|
/* Copyright 2004, 2005 by suzuki toshiya, Masatake YAMATO, Red Hat 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 __GXVMORT_H__
|
|
#define __GXVMORT_H__
|
|
|
|
#include "gxvalid.h"
|
|
#include "gxvcommn.h"
|
|
|
|
#include FT_SFNT_NAMES_H
|
|
|
|
|
|
typedef struct GXV_mort_featureRec_
|
|
{
|
|
FT_UShort featureType;
|
|
FT_UShort featureSetting;
|
|
FT_ULong enableFlags;
|
|
FT_ULong disableFlags;
|
|
|
|
} GXV_mort_featureRec, *GXV_mort_feature;
|
|
|
|
#define GXV_MORT_FEATURE_OFF {0, 1, 0x00000000UL, 0x00000000UL}
|
|
|
|
#define IS_GXV_MORT_FEATURE_OFF( f ) \
|
|
( (f).featureType == 0 || \
|
|
(f).featureSetting == 1 || \
|
|
(f).enableFlags == 0x00000000UL || \
|
|
(f).disableFlags == 0x00000000UL )
|
|
|
|
|
|
FT_LOCAL( void )
|
|
gxv_mort_featurearray_validate( FT_Bytes table,
|
|
FT_Bytes limit,
|
|
FT_UInt nFeatureFlags,
|
|
GXV_Validator valid );
|
|
|
|
FT_LOCAL( void )
|
|
gxv_mort_coverage_validate( FT_UShort coverage,
|
|
GXV_Validator valid );
|
|
|
|
FT_LOCAL( void )
|
|
gxv_mort_subtable_type0_validate( FT_Bytes table,
|
|
FT_Bytes limit,
|
|
GXV_Validator valid );
|
|
|
|
FT_LOCAL( void )
|
|
gxv_mort_subtable_type1_validate( FT_Bytes table,
|
|
FT_Bytes limit,
|
|
GXV_Validator valid );
|
|
|
|
FT_LOCAL( void )
|
|
gxv_mort_subtable_type2_validate( FT_Bytes table,
|
|
FT_Bytes limit,
|
|
GXV_Validator valid );
|
|
|
|
FT_LOCAL( void )
|
|
gxv_mort_subtable_type4_validate( FT_Bytes table,
|
|
FT_Bytes limit,
|
|
GXV_Validator valid );
|
|
|
|
FT_LOCAL( void )
|
|
gxv_mort_subtable_type5_validate( FT_Bytes table,
|
|
FT_Bytes limit,
|
|
GXV_Validator valid );
|
|
|
|
|
|
#endif /* __GXVMORT_H__ */
|
|
|
|
|
|
/* END */
|