ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

cidparse.h
Go to the documentation of this file.
00001 /***************************************************************************/
00002 /*                                                                         */
00003 /*  cidparse.h                                                             */
00004 /*                                                                         */
00005 /*    CID-keyed Type1 parser (specification).                              */
00006 /*                                                                         */
00007 /*  Copyright 1996-2001, 2002, 2003, 2004 by                               */
00008 /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
00009 /*                                                                         */
00010 /*  This file is part of the FreeType project, and may only be used,       */
00011 /*  modified, and distributed under the terms of the FreeType project      */
00012 /*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
00013 /*  this file you indicate that you have read the license and              */
00014 /*  understand and accept it fully.                                        */
00015 /*                                                                         */
00016 /***************************************************************************/
00017 
00018 
00019 #ifndef __CIDPARSE_H__
00020 #define __CIDPARSE_H__
00021 
00022 
00023 #include <ft2build.h>
00024 #include FT_INTERNAL_TYPE1_TYPES_H
00025 #include FT_INTERNAL_STREAM_H
00026 #include FT_INTERNAL_POSTSCRIPT_AUX_H
00027 
00028 
00029 FT_BEGIN_HEADER
00030 
00031 
00032   /*************************************************************************/
00033   /*                                                                       */
00034   /* <Struct>                                                              */
00035   /*    CID_Parser                                                         */
00036   /*                                                                       */
00037   /* <Description>                                                         */
00038   /*    A CID_Parser is an object used to parse a Type 1 fonts very        */
00039   /*    quickly.                                                           */
00040   /*                                                                       */
00041   /* <Fields>                                                              */
00042   /*    root           :: The root PS_ParserRec fields.                    */
00043   /*                                                                       */
00044   /*    stream         :: The current input stream.                        */
00045   /*                                                                       */
00046   /*    postscript     :: A pointer to the data to be parsed.              */
00047   /*                                                                       */
00048   /*    postscript_len :: The length of the data to be parsed.             */
00049   /*                                                                       */
00050   /*    data_offset    :: The start position of the binary data (i.e., the */
00051   /*                      end of the data to be parsed.                    */
00052   /*                                                                       */
00053   /*    binary_length  :: The length of the data after the `StartData'     */
00054   /*                      command if the data format is hexadecimal.       */
00055   /*                                                                       */
00056   /*    cid            :: A structure which holds the information about    */
00057   /*                      the current font.                                */
00058   /*                                                                       */
00059   /*    num_dict       :: The number of font dictionaries.                 */
00060   /*                                                                       */
00061   typedef struct  CID_Parser_
00062   {
00063     PS_ParserRec  root;
00064     FT_Stream     stream;
00065 
00066     FT_Byte*      postscript;
00067     FT_Long       postscript_len;
00068 
00069     FT_ULong      data_offset;
00070 
00071     FT_Long       binary_length;
00072 
00073     CID_FaceInfo  cid;
00074     FT_Int        num_dict;
00075 
00076   } CID_Parser;
00077 
00078 
00079   FT_LOCAL( FT_Error )
00080   cid_parser_new( CID_Parser*    parser,
00081                   FT_Stream      stream,
00082                   FT_Memory      memory,
00083                   PSAux_Service  psaux );
00084 
00085   FT_LOCAL( void )
00086   cid_parser_done( CID_Parser*  parser );
00087 
00088 
00089   /*************************************************************************/
00090   /*                                                                       */
00091   /*                            PARSING ROUTINES                           */
00092   /*                                                                       */
00093   /*************************************************************************/
00094 
00095 #define cid_parser_skip_spaces( p ) \
00096           (p)->root.funcs.skip_spaces( &(p)->root )
00097 #define cid_parser_skip_PS_token( p ) \
00098           (p)->root.funcs.skip_PS_token( &(p)->root )
00099 
00100 #define cid_parser_to_int( p )        (p)->root.funcs.to_int( &(p)->root )
00101 #define cid_parser_to_fixed( p, t )   (p)->root.funcs.to_fixed( &(p)->root, t )
00102 
00103 #define cid_parser_to_coord_array( p, m, c )                          \
00104           (p)->root.funcs.to_coord_array( &(p)->root, m, c )
00105 #define cid_parser_to_fixed_array( p, m, f, t )                          \
00106           (p)->root.funcs.to_fixed_array( &(p)->root, m, f, t )
00107 #define cid_parser_to_token( p, t )                         \
00108           (p)->root.funcs.to_token( &(p)->root, t )
00109 #define cid_parser_to_token_array( p, t, m, c )                          \
00110           (p)->root.funcs.to_token_array( &(p)->root, t, m, c )
00111 
00112 #define cid_parser_load_field( p, f, o )                              \
00113           (p)->root.funcs.load_field( &(p)->root, f, o, 0, 0 )
00114 #define cid_parser_load_field_table( p, f, o )                              \
00115           (p)->root.funcs.load_field_table( &(p)->root, f, o, 0, 0 )
00116 
00117 
00118 FT_END_HEADER
00119 
00120 #endif /* __CIDPARSE_H__ */
00121 
00122 
00123 /* END */

Generated on Sun May 27 2012 04:33:50 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.