Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(218)

Side by Side Diff: core/src/fxge/fx_freetype/fxft2.5.01/src/cff/cffparse.h

Issue 815103002: Update freetype to 2.5.4. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Adjust GYP and GN Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 /***************************************************************************/
2 /* */
3 /* cffparse.h */
4 /* */
5 /* CFF token stream parser (specification) */
6 /* */
7 /* Copyright 1996-2003, 2011 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 __CFF_PARSE_H__
20 #define __CFF_PARSE_H__
21
22
23 #include "../../include/ft2build.h"
24 #include "cfftypes.h"
25 #include "../../include/freetype/internal/ftobjs.h"
26
27
28 FT_BEGIN_HEADER
29
30
31 #define CFF_MAX_STACK_DEPTH 96
32
33 #define CFF_CODE_TOPDICT 0x1000
34 #define CFF_CODE_PRIVATE 0x2000
35
36
37 typedef struct CFF_ParserRec_
38 {
39 FT_Library library;
40 FT_Byte* start;
41 FT_Byte* limit;
42 FT_Byte* cursor;
43
44 FT_Byte* stack[CFF_MAX_STACK_DEPTH + 1];
45 FT_Byte** top;
46
47 FT_UInt object_code;
48 void* object;
49
50 } CFF_ParserRec, *CFF_Parser;
51
52
53 FT_LOCAL( void )
54 cff_parser_init( CFF_Parser parser,
55 FT_UInt code,
56 void* object,
57 FT_Library library);
58
59 FT_LOCAL( FT_Error )
60 cff_parser_run( CFF_Parser parser,
61 FT_Byte* start,
62 FT_Byte* limit );
63
64
65 enum
66 {
67 cff_kind_none = 0,
68 cff_kind_num,
69 cff_kind_fixed,
70 cff_kind_fixed_thousand,
71 cff_kind_string,
72 cff_kind_bool,
73 cff_kind_delta,
74 cff_kind_callback,
75
76 cff_kind_max /* do not remove */
77 };
78
79
80 /* now generate handlers for the most simple fields */
81 typedef FT_Error (*CFF_Field_Reader)( CFF_Parser parser );
82
83 typedef struct CFF_Field_Handler_
84 {
85 int kind;
86 int code;
87 FT_UInt offset;
88 FT_Byte size;
89 CFF_Field_Reader reader;
90 FT_UInt array_max;
91 FT_UInt count_offset;
92
93 #ifdef FT_DEBUG_LEVEL_TRACE
94 const char* id;
95 #endif
96
97 } CFF_Field_Handler;
98
99
100 FT_END_HEADER
101
102
103 #endif /* __CFF_PARSE_H__ */
104
105
106 /* END */
OLDNEW
« no previous file with comments | « core/src/fxge/fx_freetype/fxft2.5.01/src/cff/cffobjs.c ('k') | core/src/fxge/fx_freetype/fxft2.5.01/src/cff/cffparse.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698