Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | RSS feed

  1. /***************************************************************************/
  2. /*                                                                         */
  3. /*  t42objs.h                                                              */
  4. /*                                                                         */
  5. /*    Type 42 objects manager (specification).                             */
  6. /*                                                                         */
  7. /*  Copyright 2002, 2003, 2006, 2007, 2011 by Roberto Alameda.             */
  8. /*                                                                         */
  9. /*  This file is part of the FreeType project, and may only be used,       */
  10. /*  modified, and distributed under the terms of the FreeType project      */
  11. /*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
  12. /*  this file you indicate that you have read the license and              */
  13. /*  understand and accept it fully.                                        */
  14. /*                                                                         */
  15. /***************************************************************************/
  16.  
  17.  
  18. #ifndef __T42OBJS_H__
  19. #define __T42OBJS_H__
  20.  
  21. #include <ft2build.h>
  22. #include FT_FREETYPE_H
  23. #include FT_TYPE1_TABLES_H
  24. #include FT_INTERNAL_TYPE1_TYPES_H
  25. #include "t42types.h"
  26. #include FT_INTERNAL_OBJECTS_H
  27. #include FT_INTERNAL_DRIVER_H
  28. #include FT_SERVICE_POSTSCRIPT_CMAPS_H
  29. #include FT_INTERNAL_POSTSCRIPT_HINTS_H
  30.  
  31.  
  32. FT_BEGIN_HEADER
  33.  
  34.  
  35.   /* Type42 size */
  36.   typedef struct  T42_SizeRec_
  37.   {
  38.     FT_SizeRec  root;
  39.     FT_Size     ttsize;
  40.  
  41.   } T42_SizeRec, *T42_Size;
  42.  
  43.  
  44.   /* Type42 slot */
  45.   typedef struct  T42_GlyphSlotRec_
  46.   {
  47.     FT_GlyphSlotRec  root;
  48.     FT_GlyphSlot     ttslot;
  49.  
  50.   } T42_GlyphSlotRec, *T42_GlyphSlot;
  51.  
  52.  
  53.   /* Type 42 driver */
  54.   typedef struct  T42_DriverRec_
  55.   {
  56.     FT_DriverRec     root;
  57.     FT_Driver_Class  ttclazz;
  58.     void*            extension_component;
  59.  
  60.   } T42_DriverRec, *T42_Driver;
  61.  
  62.  
  63.   /* */
  64.  
  65.  
  66.   FT_LOCAL( FT_Error )
  67.   T42_Face_Init( FT_Stream      stream,
  68.                  FT_Face        face,
  69.                  FT_Int         face_index,
  70.                  FT_Int         num_params,
  71.                  FT_Parameter*  params );
  72.  
  73.  
  74.   FT_LOCAL( void )
  75.   T42_Face_Done( FT_Face  face );
  76.  
  77.  
  78.   FT_LOCAL( FT_Error )
  79.   T42_Size_Init( FT_Size  size );
  80.  
  81.  
  82.   FT_LOCAL( FT_Error )
  83.   T42_Size_Request( FT_Size          size,
  84.                     FT_Size_Request  req );
  85.  
  86.  
  87.   FT_LOCAL( FT_Error )
  88.   T42_Size_Select( FT_Size   size,
  89.                    FT_ULong  strike_index );
  90.  
  91.  
  92.   FT_LOCAL( void )
  93.   T42_Size_Done( FT_Size  size );
  94.  
  95.  
  96.   FT_LOCAL( FT_Error )
  97.   T42_GlyphSlot_Init( FT_GlyphSlot  slot );
  98.  
  99.  
  100.   FT_LOCAL( FT_Error )
  101.   T42_GlyphSlot_Load( FT_GlyphSlot  glyph,
  102.                       FT_Size       size,
  103.                       FT_UInt       glyph_index,
  104.                       FT_Int32      load_flags );
  105.  
  106.   FT_LOCAL( void )
  107.   T42_GlyphSlot_Done( FT_GlyphSlot  slot );
  108.  
  109.  
  110.   FT_LOCAL( FT_Error )
  111.   T42_Driver_Init( FT_Module  module );
  112.  
  113.   FT_LOCAL( void )
  114.   T42_Driver_Done( FT_Module  module );
  115.  
  116.  /* */
  117.  
  118. FT_END_HEADER
  119.  
  120.  
  121. #endif /* __T42OBJS_H__ */
  122.  
  123.  
  124. /* END */
  125.