summaryrefslogtreecommitdiff
path: root/third_party/freetype-py/freetype/ft_types.py
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/freetype-py/freetype/ft_types.py')
-rw-r--r--third_party/freetype-py/freetype/ft_types.py155
1 files changed, 155 insertions, 0 deletions
diff --git a/third_party/freetype-py/freetype/ft_types.py b/third_party/freetype-py/freetype/ft_types.py
new file mode 100644
index 0000000..8ae0f19
--- /dev/null
+++ b/third_party/freetype-py/freetype/ft_types.py
@@ -0,0 +1,155 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+# -----------------------------------------------------------------------------
+#
+# FreeType high-level python API - Copyright 2011 Nicolas P. Rougier
+# Distributed under the terms of the new BSD license.
+#
+# -----------------------------------------------------------------------------
+'''
+Freetype basic data types
+-------------------------
+
+FT_Byte : A simple typedef for the unsigned char type.
+
+FT_Bytes : A typedef for constant memory areas.
+
+FT_Char : A simple typedef for the signed char type.
+
+FT_Int : A typedef for the int type.
+
+FT_UInt : A typedef for the unsigned int type.
+
+FT_Int16 : A typedef for a 16bit signed integer type.
+
+FT_UInt16 : A typedef for a 16bit unsigned integer type.
+
+FT_Int32 : A typedef for a 32bit signed integer type.
+
+FT_UInt32 : A typedef for a 32bit unsigned integer type.
+
+FT_Short : A typedef for signed short.
+
+FT_UShort : A typedef for unsigned short.
+
+FT_Long : A typedef for signed long.
+
+FT_ULong : A typedef for unsigned long.
+
+FT_Bool : A typedef of unsigned char, used for simple booleans. As usual,
+ values 1 and 0 represent true and false, respectively.
+
+FT_Offset : This is equivalent to the ANSI C 'size_t' type, i.e., the largest
+ unsigned integer type used to express a file size or position, or
+ a memory block size.
+
+FT_PtrDist : This is equivalent to the ANSI C 'ptrdiff_t' type, i.e., the
+ largest signed integer type used to express the distance between
+ two pointers.
+
+FT_String : A simple typedef for the char type, usually used for strings.
+
+FT_Tag : A typedef for 32-bit tags (as used in the SFNT format).
+
+FT_Error : The FreeType error code type. A value of 0 is always interpreted as
+ a successful operation.
+
+FT_Fixed : This type is used to store 16.16 fixed float values, like scaling
+ values or matrix coefficients.
+
+FT_Pointer : A simple typedef for a typeless pointer.
+
+FT_Pos : The type FT_Pos is used to store vectorial coordinates. Depending on
+ the context, these can represent distances in integer font units, or
+ 16.16, or 26.6 fixed float pixel coordinates.
+
+FT_FWord : A signed 16-bit integer used to store a distance in original font
+ units.
+
+FT_UFWord : An unsigned 16-bit integer used to store a distance in original
+ font units.
+
+FT_F2Dot14 : A signed 2.14 fixed float type used for unit vectors.
+
+FT_F26Dot6 : A signed 26.6 fixed float type used for vectorial pixel
+ coordinates.
+'''
+from ctypes import *
+
+
+FT_Byte = c_ubyte # A simple typedef for the unsigned char type.
+
+FT_Bytes = c_char_p # A typedef for constant memory areas.
+
+FT_Char = c_char # A simple typedef for the signed char type.
+
+FT_Int = c_int # A typedef for the int type.
+
+FT_UInt = c_uint # A typedef for the unsigned int type.
+
+FT_Int16 = c_short # A typedef for a 16bit signed integer type.
+
+FT_UInt16 = c_ushort # A typedef for a 16bit unsigned integer type.
+
+FT_Int32 = c_int32 # A typedef for a 32bit signed integer type.
+
+FT_UInt32 = c_uint32 # A typedef for a 32bit unsigned integer type.
+
+FT_Short = c_short # A typedef for signed short.
+
+FT_UShort = c_ushort # A typedef for unsigned short.
+
+FT_Long = c_long # A typedef for signed long.
+
+FT_ULong = c_ulong # A typedef for unsigned long.
+
+FT_Bool = c_char # A typedef of unsigned char, used for simple booleans. As
+ # usual, values 1 and 0 represent true and false,
+ # respectively.
+
+FT_Offset = c_size_t # This is equivalent to the ANSI C 'size_t' type, i.e.,
+ # the largest unsigned integer type used to express a file
+ # size or position, or a memory block size.
+
+FT_PtrDist = c_longlong # This is equivalent to the ANSI C 'ptrdiff_t' type,
+ # i.e., the largest signed integer type used to express
+ # the distance between two pointers.
+
+FT_String = c_char # A simple typedef for the char type, usually used for strings.
+
+FT_String_p= c_char_p
+
+FT_Tag = FT_UInt32 # A typedef for 32-bit tags (as used in the SFNT format).
+
+FT_Error = c_int # The FreeType error code type. A value of 0 is always
+ # interpreted as a successful operation.
+
+FT_Fixed = c_long # This type is used to store 16.16 fixed float values,
+ # like scaling values or matrix coefficients.
+
+FT_Pointer = c_void_p # A simple typedef for a typeless pointer.
+
+FT_Pos = c_long # The type FT_Pos is used to store vectorial
+ # coordinates. Depending on the context, these can
+ # represent distances in integer font units, or 16.16, or
+ # 26.6 fixed float pixel coordinates.
+
+FT_FWord = c_short # A signed 16-bit integer used to store a distance in
+ # original font units.
+
+FT_UFWord = c_ushort # An unsigned 16-bit integer used to store a distance in
+ # original font units.
+
+FT_F2Dot14 = c_short # A signed 2.14 fixed float type used for unit vectors.
+
+FT_F26Dot6 = c_long # A signed 26.6 fixed float type used for vectorial pixel
+ # coordinates.
+
+FT_Glyph_Format = c_int
+
+FT_Encoding = c_int
+
+
+# Describe a function used to destroy the 'client' data of any FreeType
+# object. See the description of the FT_Generic type for details of usage.
+FT_Generic_Finalizer = CFUNCTYPE(None, c_void_p)