/src/freetype/src/type1/t1load.h

https://bitbucket.org/cabalistic/ogredeps/ · C++ Header · 102 lines · 50 code · 32 blank · 20 comment · 0 complexity · 36ac785cc79957a5f78cae23c2d4b1ae MD5 · raw file

  1. /***************************************************************************/
  2. /* */
  3. /* t1load.h */
  4. /* */
  5. /* Type 1 font loader (specification). */
  6. /* */
  7. /* Copyright 1996-2001, 2002, 2004, 2006, 2007 by */
  8. /* David Turner, Robert Wilhelm, and Werner Lemberg. */
  9. /* */
  10. /* This file is part of the FreeType project, and may only be used, */
  11. /* modified, and distributed under the terms of the FreeType project */
  12. /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
  13. /* this file you indicate that you have read the license and */
  14. /* understand and accept it fully. */
  15. /* */
  16. /***************************************************************************/
  17. #ifndef __T1LOAD_H__
  18. #define __T1LOAD_H__
  19. #include <ft2build.h>
  20. #include FT_INTERNAL_STREAM_H
  21. #include FT_INTERNAL_POSTSCRIPT_AUX_H
  22. #include FT_MULTIPLE_MASTERS_H
  23. #include "t1parse.h"
  24. FT_BEGIN_HEADER
  25. typedef struct T1_Loader_
  26. {
  27. T1_ParserRec parser; /* parser used to read the stream */
  28. FT_Int num_chars; /* number of characters in encoding */
  29. PS_TableRec encoding_table; /* PS_Table used to store the */
  30. /* encoding character names */
  31. FT_Int num_glyphs;
  32. PS_TableRec glyph_names;
  33. PS_TableRec charstrings;
  34. PS_TableRec swap_table; /* For moving .notdef glyph to index 0. */
  35. FT_Int num_subrs;
  36. PS_TableRec subrs;
  37. FT_Bool fontdata;
  38. FT_UInt keywords_encountered; /* T1_LOADER_ENCOUNTERED_XXX */
  39. } T1_LoaderRec, *T1_Loader;
  40. /* treatment of some keywords differs depending on whether */
  41. /* they precede or follow certain other keywords */
  42. #define T1_PRIVATE ( 1 << 0 )
  43. #define T1_FONTDIR_AFTER_PRIVATE ( 1 << 1 )
  44. FT_LOCAL( FT_Error )
  45. T1_Open_Face( T1_Face face );
  46. #ifndef T1_CONFIG_OPTION_NO_MM_SUPPORT
  47. FT_LOCAL( FT_Error )
  48. T1_Get_Multi_Master( T1_Face face,
  49. FT_Multi_Master* master );
  50. FT_LOCAL_DEF( FT_Error )
  51. T1_Get_MM_Var( T1_Face face,
  52. FT_MM_Var* *master );
  53. FT_LOCAL( FT_Error )
  54. T1_Set_MM_Blend( T1_Face face,
  55. FT_UInt num_coords,
  56. FT_Fixed* coords );
  57. FT_LOCAL( FT_Error )
  58. T1_Set_MM_Design( T1_Face face,
  59. FT_UInt num_coords,
  60. FT_Long* coords );
  61. FT_LOCAL_DEF( FT_Error )
  62. T1_Set_Var_Design( T1_Face face,
  63. FT_UInt num_coords,
  64. FT_Fixed* coords );
  65. FT_LOCAL( void )
  66. T1_Done_Blend( T1_Face face );
  67. #endif /* !T1_CONFIG_OPTION_NO_MM_SUPPORT */
  68. FT_END_HEADER
  69. #endif /* __T1LOAD_H__ */
  70. /* END */