ReactOS  0.4.14-dev-991-g696cdc6
psft.h
Go to the documentation of this file.
1 /***************************************************************************/
2 /* */
3 /* psft.h */
4 /* */
5 /* FreeType Glue Component to Adobe's Interpreter (specification). */
6 /* */
7 /* Copyright 2013 Adobe Systems Incorporated. */
8 /* */
9 /* This software, and all works of authorship, whether in source or */
10 /* object code form as indicated by the copyright notice(s) included */
11 /* herein (collectively, the "Work") is made available, and may only be */
12 /* used, modified, and distributed under the FreeType Project License, */
13 /* LICENSE.TXT. Additionally, subject to the terms and conditions of the */
14 /* FreeType Project License, each contributor to the Work hereby grants */
15 /* to any individual or legal entity exercising permissions granted by */
16 /* the FreeType Project License and this section (hereafter, "You" or */
17 /* "Your") a perpetual, worldwide, non-exclusive, no-charge, */
18 /* royalty-free, irrevocable (except as stated in this section) patent */
19 /* license to make, have made, use, offer to sell, sell, import, and */
20 /* otherwise transfer the Work, where such license applies only to those */
21 /* patent claims licensable by such contributor that are necessarily */
22 /* infringed by their contribution(s) alone or by combination of their */
23 /* contribution(s) with the Work to which such contribution(s) was */
24 /* submitted. If You institute patent litigation against any entity */
25 /* (including a cross-claim or counterclaim in a lawsuit) alleging that */
26 /* the Work or a contribution incorporated within the Work constitutes */
27 /* direct or contributory patent infringement, then any patent licenses */
28 /* granted to You under this License for that Work shall terminate as of */
29 /* the date such litigation is filed. */
30 /* */
31 /* By using, modifying, or distributing the Work you indicate that you */
32 /* have read and understood the terms and conditions of the */
33 /* FreeType Project License as well as those provided in this section, */
34 /* and you accept them fully. */
35 /* */
36 /***************************************************************************/
37 
38 
39 #ifndef PSFT_H_
40 #define PSFT_H_
41 
42 
43 #include "pstypes.h"
44 
45 
46  /* TODO: disable asserts for now */
47 #define CF2_NDEBUG
48 
49 
50 #include FT_SYSTEM_H
51 
52 #include "psglue.h"
53 #include FT_INTERNAL_POSTSCRIPT_AUX_H /* for PS_Decoder */
54 
55 
57 
58 
61  FT_Byte* charstring_base,
62  FT_ULong charstring_len );
63 
65  cf2_getSubfont( PS_Decoder* decoder );
66 
68  cf2_getVStore( PS_Decoder* decoder );
69 
70  FT_LOCAL( FT_UInt )
71  cf2_getMaxstack( PS_Decoder* decoder );
72 
73 #ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
75  cf2_getNormalizedVector( PS_Decoder* decoder,
76  CF2_UInt *len,
77  FT_Fixed* *vec );
78 #endif
79 
81  cf2_getPpemY( PS_Decoder* decoder );
83  cf2_getStdVW( PS_Decoder* decoder );
85  cf2_getStdHW( PS_Decoder* decoder );
86 
87  FT_LOCAL( void )
89  CF2_Fixed* blueScale,
90  CF2_Fixed* blueShift,
91  CF2_Fixed* blueFuzz );
92  FT_LOCAL( void )
93  cf2_getBlueValues( PS_Decoder* decoder,
94  size_t* count,
95  FT_Pos* *data );
96  FT_LOCAL( void )
97  cf2_getOtherBlues( PS_Decoder* decoder,
98  size_t* count,
99  FT_Pos* *data );
100  FT_LOCAL( void )
101  cf2_getFamilyBlues( PS_Decoder* decoder,
102  size_t* count,
103  FT_Pos* *data );
104  FT_LOCAL( void )
106  size_t* count,
107  FT_Pos* *data );
108 
109  FT_LOCAL( CF2_Int )
110  cf2_getLanguageGroup( PS_Decoder* decoder );
111 
112  FT_LOCAL( CF2_Int )
114  CF2_Int subrNum,
115  CF2_Buffer buf );
116  FT_LOCAL( FT_Error )
118  CF2_Int code,
119  CF2_Buffer buf );
120  FT_LOCAL( void )
122  CF2_Buffer buf );
123  FT_LOCAL( CF2_Int )
125  CF2_Int subrNum,
126  CF2_Buffer buf );
127 
129  cf2_getDefaultWidthX( PS_Decoder* decoder );
131  cf2_getNominalWidthX( PS_Decoder* decoder );
132 
133 
134  FT_LOCAL( FT_Error )
136  FT_UInt glyph_index,
137  CF2_Buffer buf );
138  FT_LOCAL( void )
140  CF2_Buffer buf );
141 
142  /*
143  * FreeType client outline
144  *
145  * process output from the charstring interpreter
146  */
147  typedef struct CF2_OutlineRec_
148  {
149  CF2_OutlineCallbacksRec root; /* base class must be first */
151 
153 
154 
155  FT_LOCAL( void )
157  FT_LOCAL( void )
159 
160 
162 
163 
164 #endif /* PSFT_H_ */
165 
166 
167 /* END */
#define CF2_UInt
Definition: pstypes.h:64
FT_BEGIN_HEADER struct CF2_BufferRec_ * CF2_Buffer
int FT_Error
Definition: fttypes.h:300
unsigned long FT_ULong
Definition: fttypes.h:253
FT_BEGIN_HEADER typedef signed long FT_Pos
Definition: ftimage.h:58
#define FT_END_HEADER
Definition: ftheader.h:54
cf2_freeT1SeacComponent(PS_Decoder *decoder, CF2_Buffer buf)
Definition: psft.c:767
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
FT_BEGIN_HEADER cf2_decoder_parse_charstrings(PS_Decoder *decoder, FT_Byte *charstring_base, FT_ULong charstring_len)
Definition: psft.c:308
GLuint GLuint GLsizei count
Definition: gl.h:1545
cf2_getVStore(PS_Decoder *decoder)
Definition: psft.c:458
cf2_getMaxstack(PS_Decoder *decoder)
Definition: psft.c:468
cf2_getFamilyOtherBlues(PS_Decoder *decoder, size_t *count, FT_Pos **data)
Definition: psft.c:608
cf2_getStdHW(PS_Decoder *decoder)
Definition: psft.c:538
struct CF2_OutlineRec_ CF2_OutlineRec
cf2_initLocalRegionBuffer(PS_Decoder *decoder, CF2_Int subrNum, CF2_Buffer buf)
Definition: psft.c:791
unsigned char FT_Byte
Definition: fttypes.h:154
#define FT_BEGIN_HEADER
Definition: ftheader.h:36
cf2_getLanguageGroup(PS_Decoder *decoder)
Definition: psft.c:621
cf2_getStdVW(PS_Decoder *decoder)
Definition: psft.c:528
#define FT_LOCAL(x)
Definition: ftconfig.h:387
cf2_getT1SeacComponent(PS_Decoder *decoder, FT_UInt glyph_index, CF2_Buffer buf)
Definition: psft.c:721
cf2_getOtherBlues(PS_Decoder *decoder, size_t *count, FT_Pos **data)
Definition: psft.c:582
CF2_OutlineCallbacksRec root
Definition: psft.h:149
cf2_getNominalWidthX(PS_Decoder *decoder)
Definition: psft.c:853
struct CF2_OutlineRec_ * CF2_Outline
cf2_getSeacComponent(PS_Decoder *decoder, CF2_Int code, CF2_Buffer buf)
Definition: psft.c:660
cf2_getSubfont(PS_Decoder *decoder)
Definition: psft.c:448
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
FT_Vector * vec
Definition: ftbbox.c:448
cf2_getPpemY(PS_Decoder *decoder)
Definition: psft.c:504
cf2_outline_reset(CF2_Outline outline)
Definition: psft.c:863
GLenum GLsizei len
Definition: glext.h:6722
Definition: mesh.c:5329
signed long FT_Fixed
Definition: fttypes.h:288
cf2_freeSeacComponent(PS_Decoder *decoder, CF2_Buffer buf)
Definition: psft.c:708
unsigned int FT_UInt
Definition: fttypes.h:231
cf2_getDefaultWidthX(PS_Decoder *decoder)
Definition: psft.c:843
#define CF2_Int
Definition: pstypes.h:65
cf2_getBlueValues(PS_Decoder *decoder, size_t *count, FT_Pos **data)
Definition: psft.c:569
cf2_outline_close(CF2_Outline outline)
Definition: psft.c:877
cf2_getBlueMetrics(PS_Decoder *decoder, CF2_Fixed *blueScale, CF2_Fixed *blueShift, CF2_Fixed *blueFuzz)
Definition: psft.c:549
cf2_initGlobalRegionBuffer(PS_Decoder *decoder, CF2_Int subrNum, CF2_Buffer buf)
Definition: psft.c:632
PS_Decoder * decoder
Definition: psft.h:150
#define CF2_Fixed
Definition: psfixed.h:48
cf2_getFamilyBlues(PS_Decoder *decoder, size_t *count, FT_Pos **data)
Definition: psft.c:595