Home | History | Annotate | Download | only in base
      1 /***************************************************************************/
      2 /*                                                                         */
      3 /*  ftbase.h                                                               */
      4 /*                                                                         */
      5 /*    The FreeType private functions used in base module (specification).  */
      6 /*                                                                         */
      7 /*  Copyright 2008, 2010 by                                                */
      8 /*  David Turner, Robert Wilhelm, Werner Lemberg, and suzuki toshiya.      */
      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 
     18 
     19 #ifndef __FTBASE_H__
     20 #define __FTBASE_H__
     21 
     22 
     23 #include <ft2build.h>
     24 #include FT_INTERNAL_OBJECTS_H
     25 
     26 
     27 FT_BEGIN_HEADER
     28 
     29 
     30   /* Assume the stream is sfnt-wrapped PS Type1 or sfnt-wrapped CID-keyed */
     31   /* font, and try to load a face specified by the face_index.            */
     32   FT_LOCAL( FT_Error )
     33   open_face_PS_from_sfnt_stream( FT_Library     library,
     34                                  FT_Stream      stream,
     35                                  FT_Long        face_index,
     36                                  FT_Int         num_params,
     37                                  FT_Parameter  *params,
     38                                  FT_Face       *aface );
     39 
     40 
     41   /* Create a new FT_Face given a buffer and a driver name. */
     42   /* From ftmac.c.                                          */
     43   FT_LOCAL( FT_Error )
     44   open_face_from_buffer( FT_Library   library,
     45                          FT_Byte*     base,
     46                          FT_ULong     size,
     47                          FT_Long      face_index,
     48                          const char*  driver_name,
     49                          FT_Face     *aface );
     50 
     51 
     52 #if  defined( FT_CONFIG_OPTION_GUESSING_EMBEDDED_RFORK ) && \
     53     !defined( FT_MACINTOSH )
     54   /* Mac OS X/Darwin kernel often changes recommended method to access */
     55   /* the resource fork and older methods makes the kernel issue the    */
     56   /* warning of deprecated method.  To calm it down, the methods based */
     57   /* on Darwin VFS should be grouped and skip the rest methods after   */
     58   /* the case the resource is opened but found to lack a font in it.   */
     59   FT_LOCAL( FT_Bool )
     60   ft_raccess_rule_by_darwin_vfs( FT_Library library, FT_UInt  rule_index );
     61 #endif
     62 
     63 
     64 FT_END_HEADER
     65 
     66 #endif /* __FTBASE_H__ */
     67 
     68 
     69 /* END */
     70