godot/thirdparty/freetype/src/pfr/pfrtypes.h

/****************************************************************************
 *
 * pfrtypes.h
 *
 *   FreeType PFR data structures (specification only).
 *
 * Copyright (C) 2002-2023 by
 * David Turner, Robert Wilhelm, and Werner Lemberg.
 *
 * 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 PFRTYPES_H_
#define PFRTYPES_H_

#include <freetype/internal/ftobjs.h>

FT_BEGIN_HEADER

  /************************************************************************/

  /* the PFR Header structure */
  PFR_Header;


  /* used in `color_flags' field of the PFR_Header */
#define PFR_FLAG_BLACK_PIXEL
#define PFR_FLAG_INVERT_BITMAP


  /************************************************************************/

  PFR_LogFont;


#define PFR_LINE_JOIN_MITER
#define PFR_LINE_JOIN_ROUND
#define PFR_LINE_JOIN_BEVEL
#define PFR_LINE_JOIN_MASK

#define PFR_LOG_STROKE
#define PFR_LOG_2BYTE_STROKE
#define PFR_LOG_BOLD
#define PFR_LOG_2BYTE_BOLD
#define PFR_LOG_EXTRA_ITEMS


  /************************************************************************/

#define PFR_BITMAP_2BYTE_CHARCODE
#define PFR_BITMAP_2BYTE_SIZE
#define PFR_BITMAP_3BYTE_OFFSET

  /* not part of the specification but used for implementation */
#define PFR_BITMAP_CHARCODES_VALIDATED
#define PFR_BITMAP_VALID_CHARCODES


  PFR_BitmapChar;


#define PFR_STRIKE_2BYTE_XPPM
#define PFR_STRIKE_2BYTE_YPPM
#define PFR_STRIKE_3BYTE_SIZE
#define PFR_STRIKE_3BYTE_OFFSET
#define PFR_STRIKE_2BYTE_COUNT


  PFR_Strike;


  /************************************************************************/

  PFR_Char;


  /************************************************************************/

  PFR_Dimension;

  /************************************************************************/

  PFR_KernItem;

  PFR_KernItemRec;


#define PFR_KERN_INDEX( g1, g2 )

#define PFR_KERN_PAIR_INDEX( pair )

#define PFR_NEXT_KPAIR( p )


  /************************************************************************/

  PFR_PhyFont;


#define PFR_PHY_VERTICAL
#define PFR_PHY_2BYTE_CHARCODE
#define PFR_PHY_PROPORTIONAL
#define PFR_PHY_ASCII_CODE
#define PFR_PHY_2BYTE_GPS_SIZE
#define PFR_PHY_3BYTE_GPS_OFFSET
#define PFR_PHY_EXTRA_ITEMS


#define PFR_KERN_2BYTE_CHAR
#define PFR_KERN_2BYTE_ADJ


  /************************************************************************/

#define PFR_GLYPH_YCOUNT
#define PFR_GLYPH_XCOUNT
#define PFR_GLYPH_1BYTE_XYCOUNT

#define PFR_GLYPH_SINGLE_EXTRA_ITEMS
#define PFR_GLYPH_COMPOUND_EXTRA_ITEMS

#define PFR_GLYPH_IS_COMPOUND


  /* controlled coordinate */
  PFR_Coord;


  PFR_SubGlyph;


#define PFR_SUBGLYPH_XSCALE
#define PFR_SUBGLYPH_YSCALE
#define PFR_SUBGLYPH_2BYTE_SIZE
#define PFR_SUBGLYPH_3BYTE_OFFSET


  PFR_Glyph;


FT_END_HEADER

#endif /* PFRTYPES_H_ */


/* END */