Edit

kc3-lang/freetype/src/type42/t42parse.h

Branch :

  • Show log

    Commit

  • Author : Alexei Podtelezhnikov
    Date : 2024-01-27 11:11:22
    Hash : 47574f7e
    Message : Update all copyright notices.

  • src/type42/t42parse.h
  • /****************************************************************************
     *
     * t42parse.h
     *
     *   Type 42 font parser (specification).
     *
     * Copyright (C) 2002-2024 by
     * Roberto Alameda.
     *
     * 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 T42PARSE_H_
    #define T42PARSE_H_
    
    
    #include "t42objs.h"
    #include <freetype/internal/psaux.h>
    
    
    FT_BEGIN_HEADER
    
      typedef struct  T42_ParserRec_
      {
        PS_ParserRec  root;
        FT_Stream     stream;
    
        FT_Byte*      base_dict;
        FT_Long       base_len;
    
        FT_Bool       in_memory;
    
      } T42_ParserRec, *T42_Parser;
    
    
      typedef struct  T42_Loader_
      {
        T42_ParserRec  parser;          /* parser used to read the stream */
    
        FT_Int         num_chars;       /* number of characters in encoding */
        PS_TableRec    encoding_table;  /* PS_Table used to store the       */
                                        /* encoding character names         */
    
        FT_Int         num_glyphs;
        PS_TableRec    glyph_names;
        PS_TableRec    charstrings;
        PS_TableRec    swap_table;      /* For moving .notdef glyph to index 0. */
    
      } T42_LoaderRec, *T42_Loader;
    
    
      FT_LOCAL( FT_Error )
      t42_parser_init( T42_Parser     parser,
                       FT_Stream      stream,
                       FT_Memory      memory,
                       PSAux_Service  psaux );
    
      FT_LOCAL( void )
      t42_parser_done( T42_Parser  parser );
    
    
      FT_LOCAL( FT_Error )
      t42_parse_dict( T42_Face    face,
                      T42_Loader  loader,
                      FT_Byte*    base,
                      FT_Long     size );
    
    
      FT_LOCAL( void )
      t42_loader_init( T42_Loader  loader,
                       T42_Face    face );
    
      FT_LOCAL( void )
      t42_loader_done( T42_Loader  loader );
    
    
     /* */
    
    FT_END_HEADER
    
    
    #endif /* T42PARSE_H_ */
    
    
    /* END */