~ubuntu-branches/ubuntu/vivid/emscripten/vivid

« back to all changes in this revision

Viewing changes to tests/freetype/src/cff/cffobjs.h

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2013-05-02 13:11:51 UTC
  • Revision ID: package-import@ubuntu.com-20130502131151-q8dvteqr1ef2x7xz
Tags: upstream-1.4.1~20130504~adb56cb
ImportĀ upstreamĀ versionĀ 1.4.1~20130504~adb56cb

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/***************************************************************************/
 
2
/*                                                                         */
 
3
/*  cffobjs.h                                                              */
 
4
/*                                                                         */
 
5
/*    OpenType objects manager (specification).                            */
 
6
/*                                                                         */
 
7
/*  Copyright 1996-2001, 2002, 2003, 2004, 2006, 2007, 2008 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
 
 
18
 
 
19
#ifndef __CFFOBJS_H__
 
20
#define __CFFOBJS_H__
 
21
 
 
22
 
 
23
#include <ft2build.h>
 
24
#include FT_INTERNAL_OBJECTS_H
 
25
#include "cfftypes.h"
 
26
#include FT_INTERNAL_TRUETYPE_TYPES_H
 
27
#include FT_SERVICE_POSTSCRIPT_CMAPS_H
 
28
#include FT_INTERNAL_POSTSCRIPT_HINTS_H
 
29
 
 
30
 
 
31
FT_BEGIN_HEADER
 
32
 
 
33
 
 
34
  /*************************************************************************/
 
35
  /*                                                                       */
 
36
  /* <Type>                                                                */
 
37
  /*    CFF_Driver                                                         */
 
38
  /*                                                                       */
 
39
  /* <Description>                                                         */
 
40
  /*    A handle to an OpenType driver object.                             */
 
41
  /*                                                                       */
 
42
  typedef struct CFF_DriverRec_*  CFF_Driver;
 
43
 
 
44
  typedef TT_Face  CFF_Face;
 
45
 
 
46
 
 
47
  /*************************************************************************/
 
48
  /*                                                                       */
 
49
  /* <Type>                                                                */
 
50
  /*    CFF_Size                                                           */
 
51
  /*                                                                       */
 
52
  /* <Description>                                                         */
 
53
  /*    A handle to an OpenType size object.                               */
 
54
  /*                                                                       */
 
55
  typedef struct  CFF_SizeRec_
 
56
  {
 
57
    FT_SizeRec  root;
 
58
    FT_ULong    strike_index;    /* 0xFFFFFFFF to indicate invalid */
 
59
 
 
60
  } CFF_SizeRec, *CFF_Size;
 
61
 
 
62
 
 
63
  /*************************************************************************/
 
64
  /*                                                                       */
 
65
  /* <Type>                                                                */
 
66
  /*    CFF_GlyphSlot                                                      */
 
67
  /*                                                                       */
 
68
  /* <Description>                                                         */
 
69
  /*    A handle to an OpenType glyph slot object.                         */
 
70
  /*                                                                       */
 
71
  typedef struct  CFF_GlyphSlotRec_
 
72
  {
 
73
    FT_GlyphSlotRec  root;
 
74
 
 
75
    FT_Bool          hint;
 
76
    FT_Bool          scaled;
 
77
 
 
78
    FT_Fixed         x_scale;
 
79
    FT_Fixed         y_scale;
 
80
 
 
81
  } CFF_GlyphSlotRec, *CFF_GlyphSlot;
 
82
 
 
83
 
 
84
  /*************************************************************************/
 
85
  /*                                                                       */
 
86
  /* <Type>                                                                */
 
87
  /*    CFF_Internal                                                       */
 
88
  /*                                                                       */
 
89
  /* <Description>                                                         */
 
90
  /*    The interface to the `internal' field of `FT_Size'.                */
 
91
  /*                                                                       */
 
92
  typedef struct  CFF_InternalRec_
 
93
  {
 
94
    PSH_Globals  topfont;
 
95
    PSH_Globals  subfonts[CFF_MAX_CID_FONTS];
 
96
 
 
97
  } CFF_InternalRec, *CFF_Internal;
 
98
 
 
99
 
 
100
  /*************************************************************************/
 
101
  /*                                                                       */
 
102
  /* Subglyph transformation record.                                       */
 
103
  /*                                                                       */
 
104
  typedef struct  CFF_Transform_
 
105
  {
 
106
    FT_Fixed    xx, xy;     /* transformation matrix coefficients */
 
107
    FT_Fixed    yx, yy;
 
108
    FT_F26Dot6  ox, oy;     /* offsets        */
 
109
 
 
110
  } CFF_Transform;
 
111
 
 
112
 
 
113
  /***********************************************************************/
 
114
  /*                                                                     */
 
115
  /* TrueType driver class.                                              */
 
116
  /*                                                                     */
 
117
  typedef struct  CFF_DriverRec_
 
118
  {
 
119
    FT_DriverRec  root;
 
120
    void*         extension_component;
 
121
 
 
122
  } CFF_DriverRec;
 
123
 
 
124
 
 
125
  FT_LOCAL( FT_Error )
 
126
  cff_size_init( FT_Size  size );           /* CFF_Size */
 
127
 
 
128
  FT_LOCAL( void )
 
129
  cff_size_done( FT_Size  size );           /* CFF_Size */
 
130
 
 
131
  FT_LOCAL( FT_Error )
 
132
  cff_size_request( FT_Size          size,
 
133
                    FT_Size_Request  req );
 
134
 
 
135
#ifdef TT_CONFIG_OPTION_EMBEDDED_BITMAPS
 
136
 
 
137
  FT_LOCAL( FT_Error )
 
138
  cff_size_select( FT_Size   size,
 
139
                   FT_ULong  strike_index );
 
140
 
 
141
#endif
 
142
 
 
143
  FT_LOCAL( void )
 
144
  cff_slot_done( FT_GlyphSlot  slot );
 
145
 
 
146
  FT_LOCAL( FT_Error )
 
147
  cff_slot_init( FT_GlyphSlot  slot );
 
148
 
 
149
 
 
150
  /*************************************************************************/
 
151
  /*                                                                       */
 
152
  /* Face functions                                                        */
 
153
  /*                                                                       */
 
154
  FT_LOCAL( FT_Error )
 
155
  cff_face_init( FT_Stream      stream,
 
156
                 FT_Face        face,           /* CFF_Face */
 
157
                 FT_Int         face_index,
 
158
                 FT_Int         num_params,
 
159
                 FT_Parameter*  params );
 
160
 
 
161
  FT_LOCAL( void )
 
162
  cff_face_done( FT_Face  face );               /* CFF_Face */
 
163
 
 
164
 
 
165
  /*************************************************************************/
 
166
  /*                                                                       */
 
167
  /* Driver functions                                                      */
 
168
  /*                                                                       */
 
169
  FT_LOCAL( FT_Error )
 
170
  cff_driver_init( FT_Module  module );
 
171
 
 
172
  FT_LOCAL( void )
 
173
  cff_driver_done( FT_Module  module );
 
174
 
 
175
 
 
176
FT_END_HEADER
 
177
 
 
178
#endif /* __CFFOBJS_H__ */
 
179
 
 
180
 
 
181
/* END */