From 3246efedcdf31340d53b5153212d944d1656d1ad Mon Sep 17 00:00:00 2001 From: David Turner Date: Mon, 13 Mar 2000 12:12:46 +0000 Subject: [PATCH] first step towards moving all configuration options to the single "config/ftoption.h" --- config/ftoption.h | 118 ++++++++++++++++++++++++++++++++++++++++ src/sfnt/sfconfig.h | 3 +- src/truetype/ttconfig.h | 3 +- src/type1/t1config.h | 2 + src/type1z/t1config.h | 2 + 5 files changed, 126 insertions(+), 2 deletions(-) diff --git a/config/ftoption.h b/config/ftoption.h index 746788953..2caf98bc0 100644 --- a/config/ftoption.h +++ b/config/ftoption.h @@ -36,6 +36,13 @@ /* */ /*************************************************************************/ + /*************************************************************************/ + /*************************************************************************/ + /**** ****/ + /**** G E N E R A L F R E E T Y P E 2 C O N F I G U R A T I O N ****/ + /**** ****/ + /*************************************************************************/ + /*************************************************************************/ /*************************************************************************/ /* */ @@ -225,5 +232,116 @@ /* */ #define FT_MAX_GLYPH_FORMATS 8 + /*************************************************************************/ + /*************************************************************************/ + /**** ****/ + /**** S F N T D R I V E R C O N F I G U R A T I O N ****/ + /**** ****/ + /*************************************************************************/ + /*************************************************************************/ + + /*************************************************************************/ + /* */ + /* Define TT_CONFIG_OPTION_EMBEDDED_BITMAPS if you want to support */ + /* embedded bitmaps in all formats using the SFNT module (namely */ + /* TrueType & OpenType). */ + /* */ +#define TT_CONFIG_OPTION_EMBEDDED_BITMAPS + + + /*************************************************************************/ + /* */ + /* Define TT_CONFIG_OPTION_POSTSCRIPT_NAMES if you want to be able to */ + /* load and enumerate the glyph Postscript names in a TrueType or */ + /* OpenType file. */ + /* */ + /* Note that when you do not compile the "psnames" module by undefining */ + /* the above FT_CONFIG_OPTION_POSTSCRIPT_NAMES, the "sfnt" module will */ + /* contain additional code used to read the PS Names table from a font. */ + /* */ + /* (by default, the module uses "psnames" to extract glyph names).. */ + /* */ +#define TT_CONFIG_OPTION_POSTSCRIPT_NAMES + + + /*************************************************************************/ + /*************************************************************************/ + /**** ****/ + /**** T R U E T Y P E D R I V E R C O N F I G U R A T I O N ****/ + /**** ****/ + /*************************************************************************/ + /*************************************************************************/ + + /*************************************************************************/ + /* */ + /* Define TT_CONFIG_OPTION_BYTECODE_INTERPRETER if you want to compile */ + /* a bytecode interpreter in the TrueType driver. Note that there are */ + /* important patent issues related to the use of the interpreter. */ + /* */ + /* By undefining this, you'll only compile the code necessary to load */ + /* TrueType glyphs without hinting.. */ + /* */ +#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER + + /*************************************************************************/ + /* */ + /* Define TT_CONFIG_OPTION_INTERPRETER_SWITCH to compile the TrueType */ + /* bytecode interpreter with a huge switch statement, rather than a */ + /* call table. This results in smaller and faster code for a number of */ + /* architectures. */ + /* */ + /* Note however that on some compiler/processor combinations, undefining */ + /* this macro will generate a faster, though larger, code. */ + /* */ +#define TT_CONFIG_OPTION_INTERPRETER_SWITCH + + /* The maximum number of sub-glyphs in a TrueType composite glyph */ +#define TT_MAX_SUBGLYPHS 32 + + /*************************************************************************/ + /*************************************************************************/ + /**** ****/ + /**** T Y P E 1 D R I V E R C O N F I G U R A T I O N ****/ + /**** ****/ + /*************************************************************************/ + /*************************************************************************/ + +/********************************************************************/ +/* T1_MAX_STACK_DEPTH is the maximal depth of the token stack used */ +/* by the Type 1 parser (see t1load.c). A minimum of 16 is required */ +/* */ +#define T1_MAX_STACK_DEPTH 16 + +/*******************************************************************/ +/* T1_MAX_DICT_DEPTH is the maximal depth of nest dictionaries and */ +/* arrays in the Type 1 stream (see t1load.c). A minimum of 4 is */ +/* required */ +#define T1_MAX_DICT_DEPTH 5 + +/***********************************************************************/ +/* T1_MAX_SUBRS_CALLS details the maximum number of nested sub-routine */ +/* calls during glyph loading */ +#define T1_MAX_SUBRS_CALLS 8 + +/*****************************************************************/ +/* T1_MAX_CHARSTRING_OPERANDS is the charstring stack's capacity */ +#define T1_MAX_CHARSTRINGS_OPERANDS 32 + + +/*******************************************************************/ +/* Define T1_CONFIG_OPTION_DISABLE_HINTER if you want to generate */ +/* a driver with no hinter. This can be useful to debug the parser */ +/* */ +#undef T1_CONFIG_OPTION_DISABLE_HINTER + +/*******************************************************************/ +/* Define this configuration macro if you want to prevent the */ +/* compilation of "t1afm", which is in charge of reading Type1 */ +/* AFM files into an existing face. Note that when set, the T1 */ +/* driver will be unable to produce kerning distances.. */ +/* */ +#undef T1_CONFIG_OPTION_NO_AFM + + #endif /* FTOPTION_H */ diff --git a/src/sfnt/sfconfig.h b/src/sfnt/sfconfig.h index cfa6c0c03..fc360704e 100644 --- a/src/sfnt/sfconfig.h +++ b/src/sfnt/sfconfig.h @@ -28,6 +28,7 @@ #define SFCONFIG_H +#if 0 /*************************************************************************/ /* */ /* Define TT_CONFIG_OPTION_EMBEDDED_BITMAPS if you want to support */ @@ -50,7 +51,7 @@ /* be built without the "psnames" module. */ /* */ #define TT_CONFIG_OPTION_POSTSCRIPT_NAMES - +#endif #endif /* SFCONFIG_H */ diff --git a/src/truetype/ttconfig.h b/src/truetype/ttconfig.h index ec454fe52..9a797eac3 100644 --- a/src/truetype/ttconfig.h +++ b/src/truetype/ttconfig.h @@ -27,7 +27,7 @@ #ifndef TTCONFIG_H #define TTCONFIG_H - +#if 0 /*************************************************************************/ /* */ /* Define TT_CONFIG_OPTION_BYTECODE_INTERPRETER if you want to compile */ @@ -72,6 +72,7 @@ #define TT_MAX_SUBGLYPHS 32 #define TT_USE_FIXED +#endif #endif /* TTCONFIG_H */ diff --git a/src/type1/t1config.h b/src/type1/t1config.h index 9767301f9..cc546d06e 100644 --- a/src/type1/t1config.h +++ b/src/type1/t1config.h @@ -18,6 +18,7 @@ #ifndef T1CONFIG_H #define T1CONFIG_H +#if 0 /* T1_MAX_STACK_DEPTH is the maximal depth of the token stack used */ /* by the Type 1 parser (see t1load.c). A minimum of 16 is required */ /* */ @@ -48,5 +49,6 @@ /* driver will be unable to produce kerning distances.. */ /* */ #undef T1_CONFIG_OPTION_NO_AFM +#endif #endif /* T1CONFIG_H */ diff --git a/src/type1z/t1config.h b/src/type1z/t1config.h index 9767301f9..cc546d06e 100644 --- a/src/type1z/t1config.h +++ b/src/type1z/t1config.h @@ -18,6 +18,7 @@ #ifndef T1CONFIG_H #define T1CONFIG_H +#if 0 /* T1_MAX_STACK_DEPTH is the maximal depth of the token stack used */ /* by the Type 1 parser (see t1load.c). A minimum of 16 is required */ /* */ @@ -48,5 +49,6 @@ /* driver will be unable to produce kerning distances.. */ /* */ #undef T1_CONFIG_OPTION_NO_AFM +#endif #endif /* T1CONFIG_H */