-/***************************************************************************/\r
-/* */\r
-/* cffobjs.h */\r
-/* */\r
-/* OpenType objects manager (specification). */\r
-/* */\r
-/* Copyright 1996-2001, 2002, 2003, 2004, 2006, 2007 by */\r
-/* David Turner, Robert Wilhelm, and Werner Lemberg. */\r
-/* */\r
-/* This file is part of the FreeType project, and may only be used, */\r
-/* modified, and distributed under the terms of the FreeType project */\r
-/* license, LICENSE.TXT. By continuing to use, modify, or distribute */\r
-/* this file you indicate that you have read the license and */\r
-/* understand and accept it fully. */\r
-/* */\r
-/***************************************************************************/\r
-\r
-\r
-#ifndef __CFFOBJS_H__\r
-#define __CFFOBJS_H__\r
-\r
-\r
-#include <ft2build.h>\r
-#include FT_INTERNAL_OBJECTS_H\r
-#include "cfftypes.h"\r
-#include FT_INTERNAL_TRUETYPE_TYPES_H\r
-#include FT_SERVICE_POSTSCRIPT_CMAPS_H\r
-\r
-\r
-FT_BEGIN_HEADER\r
-\r
-\r
- /*************************************************************************/\r
- /* */\r
- /* <Type> */\r
- /* CFF_Driver */\r
- /* */\r
- /* <Description> */\r
- /* A handle to an OpenType driver object. */\r
- /* */\r
- typedef struct CFF_DriverRec_* CFF_Driver;\r
-\r
- typedef TT_Face CFF_Face;\r
-\r
-\r
- /*************************************************************************/\r
- /* */\r
- /* <Type> */\r
- /* CFF_Size */\r
- /* */\r
- /* <Description> */\r
- /* A handle to an OpenType size object. */\r
- /* */\r
- typedef struct CFF_SizeRec_\r
- {\r
- FT_SizeRec root;\r
- FT_ULong strike_index; /* 0xFFFFFFFF to indicate invalid */\r
-\r
- } CFF_SizeRec, *CFF_Size;\r
-\r
-\r
- /*************************************************************************/\r
- /* */\r
- /* <Type> */\r
- /* CFF_GlyphSlot */\r
- /* */\r
- /* <Description> */\r
- /* A handle to an OpenType glyph slot object. */\r
- /* */\r
- typedef struct CFF_GlyphSlotRec_\r
- {\r
- FT_GlyphSlotRec root;\r
-\r
- FT_Bool hint;\r
- FT_Bool scaled;\r
-\r
- FT_Fixed x_scale;\r
- FT_Fixed y_scale;\r
-\r
- } CFF_GlyphSlotRec, *CFF_GlyphSlot;\r
-\r
-\r
-\r
- /*************************************************************************/\r
- /* */\r
- /* Subglyph transformation record. */\r
- /* */\r
- typedef struct CFF_Transform_\r
- {\r
- FT_Fixed xx, xy; /* transformation matrix coefficients */\r
- FT_Fixed yx, yy;\r
- FT_F26Dot6 ox, oy; /* offsets */\r
-\r
- } CFF_Transform;\r
-\r
-\r
- /***********************************************************************/\r
- /* */\r
- /* TrueType driver class. */\r
- /* */\r
- typedef struct CFF_DriverRec_\r
- {\r
- FT_DriverRec root;\r
- void* extension_component;\r
-\r
- } CFF_DriverRec;\r
-\r
-\r
- FT_LOCAL( FT_Error )\r
- cff_size_init( FT_Size size ); /* CFF_Size */\r
-\r
- FT_LOCAL( void )\r
- cff_size_done( FT_Size size ); /* CFF_Size */\r
-\r
- FT_LOCAL( FT_Error )\r
- cff_size_request( FT_Size size,\r
- FT_Size_Request req );\r
-\r
-#ifdef TT_CONFIG_OPTION_EMBEDDED_BITMAPS\r
-\r
- FT_LOCAL( FT_Error )\r
- cff_size_select( FT_Size size,\r
- FT_ULong strike_index );\r
-\r
-#endif\r
-\r
- FT_LOCAL( void )\r
- cff_slot_done( FT_GlyphSlot slot );\r
-\r
- FT_LOCAL( FT_Error )\r
- cff_slot_init( FT_GlyphSlot slot );\r
-\r
-\r
- /*************************************************************************/\r
- /* */\r
- /* Face functions */\r
- /* */\r
- FT_LOCAL( FT_Error )\r
- cff_face_init( FT_Stream stream,\r
- FT_Face face, /* CFF_Face */\r
- FT_Int face_index,\r
- FT_Int num_params,\r
- FT_Parameter* params );\r
-\r
- FT_LOCAL( void )\r
- cff_face_done( FT_Face face ); /* CFF_Face */\r
-\r
-\r
- /*************************************************************************/\r
- /* */\r
- /* Driver functions */\r
- /* */\r
- FT_LOCAL( FT_Error )\r
- cff_driver_init( FT_Module module );\r
-\r
- FT_LOCAL( void )\r
- cff_driver_done( FT_Module module );\r
-\r
-\r
-FT_END_HEADER\r
-\r
-#endif /* __CFFOBJS_H__ */\r
-\r
-\r
-/* END */\r
+/***************************************************************************/
+/* */
+/* cffobjs.h */
+/* */
+/* OpenType objects manager (specification). */
+/* */
+/* Copyright 1996-2001, 2002, 2003, 2004, 2006, 2007, 2008 by */
+/* David Turner, Robert Wilhelm, and Werner Lemberg. */
+/* */
+/* This file is part of the FreeType project, and may only be used, */
+/* modified, and distributed under the terms of the FreeType project */
+/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
+/* this file you indicate that you have read the license and */
+/* understand and accept it fully. */
+/* */
+/***************************************************************************/
+
+
+#ifndef __CFFOBJS_H__
+#define __CFFOBJS_H__
+
+
+#include <ft2build.h>
+#include FT_INTERNAL_OBJECTS_H
+#include "cfftypes.h"
+#include FT_INTERNAL_TRUETYPE_TYPES_H
+#include FT_SERVICE_POSTSCRIPT_CMAPS_H
+#include FT_INTERNAL_POSTSCRIPT_HINTS_H
+
+
+FT_BEGIN_HEADER
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* CFF_Driver */
+ /* */
+ /* <Description> */
+ /* A handle to an OpenType driver object. */
+ /* */
+ typedef struct CFF_DriverRec_* CFF_Driver;
+
+ typedef TT_Face CFF_Face;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* CFF_Size */
+ /* */
+ /* <Description> */
+ /* A handle to an OpenType size object. */
+ /* */
+ typedef struct CFF_SizeRec_
+ {
+ FT_SizeRec root;
+ FT_ULong strike_index; /* 0xFFFFFFFF to indicate invalid */
+
+ } CFF_SizeRec, *CFF_Size;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* CFF_GlyphSlot */
+ /* */
+ /* <Description> */
+ /* A handle to an OpenType glyph slot object. */
+ /* */
+ typedef struct CFF_GlyphSlotRec_
+ {
+ FT_GlyphSlotRec root;
+
+ FT_Bool hint;
+ FT_Bool scaled;
+
+ FT_Fixed x_scale;
+ FT_Fixed y_scale;
+
+ } CFF_GlyphSlotRec, *CFF_GlyphSlot;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* CFF_Internal */
+ /* */
+ /* <Description> */
+ /* The interface to the `internal' field of `FT_Size'. */
+ /* */
+ typedef struct CFF_InternalRec_
+ {
+ PSH_Globals topfont;
+ PSH_Globals subfonts[CFF_MAX_CID_FONTS];
+
+ } CFF_InternalRec, *CFF_Internal;
+
+
+ /*************************************************************************/
+ /* */
+ /* Subglyph transformation record. */
+ /* */
+ typedef struct CFF_Transform_
+ {
+ FT_Fixed xx, xy; /* transformation matrix coefficients */
+ FT_Fixed yx, yy;
+ FT_F26Dot6 ox, oy; /* offsets */
+
+ } CFF_Transform;
+
+
+ /***********************************************************************/
+ /* */
+ /* TrueType driver class. */
+ /* */
+ typedef struct CFF_DriverRec_
+ {
+ FT_DriverRec root;
+ void* extension_component;
+
+ } CFF_DriverRec;
+
+
+ FT_LOCAL( FT_Error )
+ cff_size_init( FT_Size size ); /* CFF_Size */
+
+ FT_LOCAL( void )
+ cff_size_done( FT_Size size ); /* CFF_Size */
+
+ FT_LOCAL( FT_Error )
+ cff_size_request( FT_Size size,
+ FT_Size_Request req );
+
+#ifdef TT_CONFIG_OPTION_EMBEDDED_BITMAPS
+
+ FT_LOCAL( FT_Error )
+ cff_size_select( FT_Size size,
+ FT_ULong strike_index );
+
+#endif
+
+ FT_LOCAL( void )
+ cff_slot_done( FT_GlyphSlot slot );
+
+ FT_LOCAL( FT_Error )
+ cff_slot_init( FT_GlyphSlot slot );
+
+
+ /*************************************************************************/
+ /* */
+ /* Face functions */
+ /* */
+ FT_LOCAL( FT_Error )
+ cff_face_init( FT_Stream stream,
+ FT_Face face, /* CFF_Face */
+ FT_Int face_index,
+ FT_Int num_params,
+ FT_Parameter* params );
+
+ FT_LOCAL( void )
+ cff_face_done( FT_Face face ); /* CFF_Face */
+
+
+ /*************************************************************************/
+ /* */
+ /* Driver functions */
+ /* */
+ FT_LOCAL( FT_Error )
+ cff_driver_init( FT_Module module );
+
+ FT_LOCAL( void )
+ cff_driver_done( FT_Module module );
+
+
+FT_END_HEADER
+
+#endif /* __CFFOBJS_H__ */
+
+
+/* END */