/src/freetype/src/psaux/psobjs.h

https://bitbucket.org/cabalistic/ogredeps/ · C++ Header · 212 lines · 109 code · 58 blank · 45 comment · 0 complexity · 0d47790777761c45db4868f8597bb7b1 MD5 · raw file

  1. /***************************************************************************/
  2. /* */
  3. /* psobjs.h */
  4. /* */
  5. /* Auxiliary functions for PostScript fonts (specification). */
  6. /* */
  7. /* Copyright 1996-2001, 2002, 2003 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 __PSOBJS_H__
  18. #define __PSOBJS_H__
  19. #include <ft2build.h>
  20. #include FT_INTERNAL_POSTSCRIPT_AUX_H
  21. FT_BEGIN_HEADER
  22. /*************************************************************************/
  23. /*************************************************************************/
  24. /***** *****/
  25. /***** T1_TABLE *****/
  26. /***** *****/
  27. /*************************************************************************/
  28. /*************************************************************************/
  29. FT_CALLBACK_TABLE
  30. const PS_Table_FuncsRec ps_table_funcs;
  31. FT_CALLBACK_TABLE
  32. const PS_Parser_FuncsRec ps_parser_funcs;
  33. FT_CALLBACK_TABLE
  34. const T1_Builder_FuncsRec t1_builder_funcs;
  35. FT_LOCAL( FT_Error )
  36. ps_table_new( PS_Table table,
  37. FT_Int count,
  38. FT_Memory memory );
  39. FT_LOCAL( FT_Error )
  40. ps_table_add( PS_Table table,
  41. FT_Int idx,
  42. void* object,
  43. FT_PtrDist length );
  44. FT_LOCAL( void )
  45. ps_table_done( PS_Table table );
  46. FT_LOCAL( void )
  47. ps_table_release( PS_Table table );
  48. /*************************************************************************/
  49. /*************************************************************************/
  50. /***** *****/
  51. /***** T1 PARSER *****/
  52. /***** *****/
  53. /*************************************************************************/
  54. /*************************************************************************/
  55. FT_LOCAL( void )
  56. ps_parser_skip_spaces( PS_Parser parser );
  57. FT_LOCAL( void )
  58. ps_parser_skip_PS_token( PS_Parser parser );
  59. FT_LOCAL( void )
  60. ps_parser_to_token( PS_Parser parser,
  61. T1_Token token );
  62. FT_LOCAL( void )
  63. ps_parser_to_token_array( PS_Parser parser,
  64. T1_Token tokens,
  65. FT_UInt max_tokens,
  66. FT_Int* pnum_tokens );
  67. FT_LOCAL( FT_Error )
  68. ps_parser_load_field( PS_Parser parser,
  69. const T1_Field field,
  70. void** objects,
  71. FT_UInt max_objects,
  72. FT_ULong* pflags );
  73. FT_LOCAL( FT_Error )
  74. ps_parser_load_field_table( PS_Parser parser,
  75. const T1_Field field,
  76. void** objects,
  77. FT_UInt max_objects,
  78. FT_ULong* pflags );
  79. FT_LOCAL( FT_Long )
  80. ps_parser_to_int( PS_Parser parser );
  81. FT_LOCAL( FT_Error )
  82. ps_parser_to_bytes( PS_Parser parser,
  83. FT_Byte* bytes,
  84. FT_Offset max_bytes,
  85. FT_Long* pnum_bytes,
  86. FT_Bool delimiters );
  87. FT_LOCAL( FT_Fixed )
  88. ps_parser_to_fixed( PS_Parser parser,
  89. FT_Int power_ten );
  90. FT_LOCAL( FT_Int )
  91. ps_parser_to_coord_array( PS_Parser parser,
  92. FT_Int max_coords,
  93. FT_Short* coords );
  94. FT_LOCAL( FT_Int )
  95. ps_parser_to_fixed_array( PS_Parser parser,
  96. FT_Int max_values,
  97. FT_Fixed* values,
  98. FT_Int power_ten );
  99. FT_LOCAL( void )
  100. ps_parser_init( PS_Parser parser,
  101. FT_Byte* base,
  102. FT_Byte* limit,
  103. FT_Memory memory );
  104. FT_LOCAL( void )
  105. ps_parser_done( PS_Parser parser );
  106. /*************************************************************************/
  107. /*************************************************************************/
  108. /***** *****/
  109. /***** T1 BUILDER *****/
  110. /***** *****/
  111. /*************************************************************************/
  112. /*************************************************************************/
  113. FT_LOCAL( void )
  114. t1_builder_init( T1_Builder builder,
  115. FT_Face face,
  116. FT_Size size,
  117. FT_GlyphSlot glyph,
  118. FT_Bool hinting );
  119. FT_LOCAL( void )
  120. t1_builder_done( T1_Builder builder );
  121. FT_LOCAL( FT_Error )
  122. t1_builder_check_points( T1_Builder builder,
  123. FT_Int count );
  124. FT_LOCAL( void )
  125. t1_builder_add_point( T1_Builder builder,
  126. FT_Pos x,
  127. FT_Pos y,
  128. FT_Byte flag );
  129. FT_LOCAL( FT_Error )
  130. t1_builder_add_point1( T1_Builder builder,
  131. FT_Pos x,
  132. FT_Pos y );
  133. FT_LOCAL( FT_Error )
  134. t1_builder_add_contour( T1_Builder builder );
  135. FT_LOCAL( FT_Error )
  136. t1_builder_start_point( T1_Builder builder,
  137. FT_Pos x,
  138. FT_Pos y );
  139. FT_LOCAL( void )
  140. t1_builder_close_contour( T1_Builder builder );
  141. /*************************************************************************/
  142. /*************************************************************************/
  143. /***** *****/
  144. /***** OTHER *****/
  145. /***** *****/
  146. /*************************************************************************/
  147. /*************************************************************************/
  148. FT_LOCAL( void )
  149. t1_decrypt( FT_Byte* buffer,
  150. FT_Offset length,
  151. FT_UShort seed );
  152. FT_END_HEADER
  153. #endif /* __PSOBJS_H__ */
  154. /* END */