From f1a285511c650681bebcc74b969ea2ac4e971e4c Mon Sep 17 00:00:00 2001 From: Hanno Braun Date: Sat, 11 Oct 2014 11:39:12 +0200 Subject: [PATCH] Upgrade to latest Rust nightly See https://github.com/rust-lang/rust/pull/17853 for details. --- src/face.rs | 42 +++--- src/ffi.rs | 414 ++++++++++++++++++++++++++-------------------------- 2 files changed, 228 insertions(+), 228 deletions(-) diff --git a/src/face.rs b/src/face.rs index b3d4e42..e372429 100644 --- a/src/face.rs +++ b/src/face.rs @@ -18,27 +18,27 @@ pub enum KerningMode { } bitflags!(flags LoadFlag: i32 { - static Default = ffi::FT_LOAD_DEFAULT, - static NoScale = ffi::FT_LOAD_NO_SCALE, - static NoHinting = ffi::FT_LOAD_NO_HINTING, - static Render = ffi::FT_LOAD_RENDER, - static NoBitmap = ffi::FT_LOAD_NO_BITMAP, - static VerticalLayout = ffi::FT_LOAD_VERTICAL_LAYOUT, - static ForceAutohint = ffi::FT_LOAD_FORCE_AUTOHINT, - static CropBitmap = ffi::FT_LOAD_CROP_BITMAP, - static Pendantic = ffi::FT_LOAD_PENDANTIC, - static IgnoreGlobalAdvanceWidth = ffi::FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH, - static NoRecurse = ffi::FT_LOAD_NO_RECURSE, - static IgnoreTransform = ffi::FT_LOAD_IGNORE_TRANSFORM, - static Monochrome = ffi::FT_LOAD_MONOCHROME, - static LinearDesign = ffi::FT_LOAD_LINEAR_DESIGN, - static NoAutohint = ffi::FT_LOAD_NO_AUTOHINT, - static LoadTargetNormal = ffi::FT_LOAD_TARGET_NORMAL, - static LoadTargetLight = ffi::FT_LOAD_TARGET_LIGHT, - static LoadTargetMono = ffi::FT_LOAD_TARGET_MONO, - static LoadTargetLCD = ffi::FT_LOAD_TARGET_LCD, - static LoadTargetLCD_V = ffi::FT_LOAD_TARGET_LCD_V, - static Color = ffi::FT_LOAD_COLOR + const Default = ffi::FT_LOAD_DEFAULT, + const NoScale = ffi::FT_LOAD_NO_SCALE, + const NoHinting = ffi::FT_LOAD_NO_HINTING, + const Render = ffi::FT_LOAD_RENDER, + const NoBitmap = ffi::FT_LOAD_NO_BITMAP, + const VerticalLayout = ffi::FT_LOAD_VERTICAL_LAYOUT, + const ForceAutohint = ffi::FT_LOAD_FORCE_AUTOHINT, + const CropBitmap = ffi::FT_LOAD_CROP_BITMAP, + const Pendantic = ffi::FT_LOAD_PENDANTIC, + const IgnoreGlobalAdvanceWidth = ffi::FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH, + const NoRecurse = ffi::FT_LOAD_NO_RECURSE, + const IgnoreTransform = ffi::FT_LOAD_IGNORE_TRANSFORM, + const Monochrome = ffi::FT_LOAD_MONOCHROME, + const LinearDesign = ffi::FT_LOAD_LINEAR_DESIGN, + const NoAutohint = ffi::FT_LOAD_NO_AUTOHINT, + const LoadTargetNormal = ffi::FT_LOAD_TARGET_NORMAL, + const LoadTargetLight = ffi::FT_LOAD_TARGET_LIGHT, + const LoadTargetMono = ffi::FT_LOAD_TARGET_MONO, + const LoadTargetLCD = ffi::FT_LOAD_TARGET_LCD, + const LoadTargetLCD_V = ffi::FT_LOAD_TARGET_LCD_V, + const Color = ffi::FT_LOAD_COLOR }) pub struct Face { diff --git a/src/ffi.rs b/src/ffi.rs index 1e971b7..89b4ff7 100644 --- a/src/ffi.rs +++ b/src/ffi.rs @@ -177,228 +177,228 @@ pub struct FT_Bitmap_Size { // Enums pub type FT_Pixel_Mode = c_uint; -pub static FT_PIXEL_MODE_NONE : FT_Pixel_Mode = 0; -pub static FT_PIXEL_MODE_MONO : FT_Pixel_Mode = 1; -pub static FT_PIXEL_MODE_GRAY : FT_Pixel_Mode = 2; -pub static FT_PIXEL_MODE_GRAY2 : FT_Pixel_Mode = 3; -pub static FT_PIXEL_MODE_GRAY4 : FT_Pixel_Mode = 4; -pub static FT_PIXEL_MODE_LCD : FT_Pixel_Mode = 5; -pub static FT_PIXEL_MODE_LCD_V : FT_Pixel_Mode = 6; -pub static FT_PIXEL_MODE_BGRA : FT_Pixel_Mode = 7; -pub static FT_PIXEL_MODE_MAX : FT_Pixel_Mode = 8; +pub const FT_PIXEL_MODE_NONE : FT_Pixel_Mode = 0; +pub const FT_PIXEL_MODE_MONO : FT_Pixel_Mode = 1; +pub const FT_PIXEL_MODE_GRAY : FT_Pixel_Mode = 2; +pub const FT_PIXEL_MODE_GRAY2 : FT_Pixel_Mode = 3; +pub const FT_PIXEL_MODE_GRAY4 : FT_Pixel_Mode = 4; +pub const FT_PIXEL_MODE_LCD : FT_Pixel_Mode = 5; +pub const FT_PIXEL_MODE_LCD_V : FT_Pixel_Mode = 6; +pub const FT_PIXEL_MODE_BGRA : FT_Pixel_Mode = 7; +pub const FT_PIXEL_MODE_MAX : FT_Pixel_Mode = 8; pub type FT_Glyph_Format = c_uint; -pub static FT_GLYPH_FORMAT_NONE : FT_Glyph_Format = 0; -pub static FT_GLYPH_FORMAT_COMPOSITE : FT_Glyph_Format = 1668246896; -pub static FT_GLYPH_FORMAT_BITMAP : FT_Glyph_Format = 1651078259; -pub static FT_GLYPH_FORMAT_OUTLINE : FT_Glyph_Format = 1869968492; -pub static FT_GLYPH_FORMAT_PLOTTER : FT_Glyph_Format = 1886154612; +pub const FT_GLYPH_FORMAT_NONE : FT_Glyph_Format = 0; +pub const FT_GLYPH_FORMAT_COMPOSITE : FT_Glyph_Format = 1668246896; +pub const FT_GLYPH_FORMAT_BITMAP : FT_Glyph_Format = 1651078259; +pub const FT_GLYPH_FORMAT_OUTLINE : FT_Glyph_Format = 1869968492; +pub const FT_GLYPH_FORMAT_PLOTTER : FT_Glyph_Format = 1886154612; pub type FT_Render_Mode = c_uint; -pub static FT_RENDER_MODE_NORMAL : FT_Render_Mode = 0; -pub static FT_RENDER_MODE_LIGHT : FT_Render_Mode = 1; -pub static FT_RENDER_MODE_MONO : FT_Render_Mode = 2; -pub static FT_RENDER_MODE_LCD : FT_Render_Mode = 3; -pub static FT_RENDER_MODE_LCD_V : FT_Render_Mode = 4; -pub static FT_RENDER_MODE_MAX : FT_Render_Mode = FT_RENDER_MODE_LCD_V + 1; +pub const FT_RENDER_MODE_NORMAL : FT_Render_Mode = 0; +pub const FT_RENDER_MODE_LIGHT : FT_Render_Mode = 1; +pub const FT_RENDER_MODE_MONO : FT_Render_Mode = 2; +pub const FT_RENDER_MODE_LCD : FT_Render_Mode = 3; +pub const FT_RENDER_MODE_LCD_V : FT_Render_Mode = 4; +pub const FT_RENDER_MODE_MAX : FT_Render_Mode = FT_RENDER_MODE_LCD_V + 1; pub type FT_Encoding = c_uint; -pub static FT_ENCODING_NONE : FT_Encoding = 0; -pub static FT_ENCODING_MS_SYMBOL : FT_Encoding = 1937337698; -pub static FT_ENCODING_UNICODE : FT_Encoding = 1970170211; -pub static FT_ENCODING_SJIS : FT_Encoding = 1936353651; -pub static FT_ENCODING_GB2312 : FT_Encoding = 1734484000; -pub static FT_ENCODING_BIG5 : FT_Encoding = 1651074869; -pub static FT_ENCODING_WANSUNG : FT_Encoding = 2002873971; -pub static FT_ENCODING_JOHAB : FT_Encoding = 1785686113; -pub static FT_ENCODING_MS_SJIS : FT_Encoding = 1936353651; -pub static FT_ENCODING_MS_GB2312 : FT_Encoding = 1734484000; -pub static FT_ENCODING_MS_BIG5 : FT_Encoding = 1651074869; -pub static FT_ENCODING_MS_WANSUNG : FT_Encoding = 2002873971; -pub static FT_ENCODING_MS_JOHAB : FT_Encoding = 1785686113; -pub static FT_ENCODING_ADOBE_STANDARD : FT_Encoding = 1094995778; -pub static FT_ENCODING_ADOBE_EXPERT : FT_Encoding = 1094992453; -pub static FT_ENCODING_ADOBE_CUSTOM : FT_Encoding = 1094992451; -pub static FT_ENCODING_ADOBE_LATIN_1 : FT_Encoding = 1818326065; -pub static FT_ENCODING_OLD_LATIN_2 : FT_Encoding = 1818326066; -pub static FT_ENCODING_APPLE_ROMAN : FT_Encoding = 1634889070; +pub const FT_ENCODING_NONE : FT_Encoding = 0; +pub const FT_ENCODING_MS_SYMBOL : FT_Encoding = 1937337698; +pub const FT_ENCODING_UNICODE : FT_Encoding = 1970170211; +pub const FT_ENCODING_SJIS : FT_Encoding = 1936353651; +pub const FT_ENCODING_GB2312 : FT_Encoding = 1734484000; +pub const FT_ENCODING_BIG5 : FT_Encoding = 1651074869; +pub const FT_ENCODING_WANSUNG : FT_Encoding = 2002873971; +pub const FT_ENCODING_JOHAB : FT_Encoding = 1785686113; +pub const FT_ENCODING_MS_SJIS : FT_Encoding = 1936353651; +pub const FT_ENCODING_MS_GB2312 : FT_Encoding = 1734484000; +pub const FT_ENCODING_MS_BIG5 : FT_Encoding = 1651074869; +pub const FT_ENCODING_MS_WANSUNG : FT_Encoding = 2002873971; +pub const FT_ENCODING_MS_JOHAB : FT_Encoding = 1785686113; +pub const FT_ENCODING_ADOBE_STANDARD : FT_Encoding = 1094995778; +pub const FT_ENCODING_ADOBE_EXPERT : FT_Encoding = 1094992453; +pub const FT_ENCODING_ADOBE_CUSTOM : FT_Encoding = 1094992451; +pub const FT_ENCODING_ADOBE_LATIN_1 : FT_Encoding = 1818326065; +pub const FT_ENCODING_OLD_LATIN_2 : FT_Encoding = 1818326066; +pub const FT_ENCODING_APPLE_ROMAN : FT_Encoding = 1634889070; pub type FT_Size_Request_Type = c_uint; -pub static FT_SIZE_REQUEST_TYPE_NOMINAL : FT_Size_Request_Type = 0; -pub static FT_SIZE_REQUEST_TYPE_REAL_DIM : FT_Size_Request_Type = 1; -pub static FT_SIZE_REQUEST_TYPE_BBOX : FT_Size_Request_Type = 2; -pub static FT_SIZE_REQUEST_TYPE_CELL : FT_Size_Request_Type = 3; -pub static FT_SIZE_REQUEST_TYPE_SCALES : FT_Size_Request_Type = 4; -pub static FT_SIZE_REQUEST_TYPE_MAX : FT_Size_Request_Type = 5; +pub const FT_SIZE_REQUEST_TYPE_NOMINAL : FT_Size_Request_Type = 0; +pub const FT_SIZE_REQUEST_TYPE_REAL_DIM : FT_Size_Request_Type = 1; +pub const FT_SIZE_REQUEST_TYPE_BBOX : FT_Size_Request_Type = 2; +pub const FT_SIZE_REQUEST_TYPE_CELL : FT_Size_Request_Type = 3; +pub const FT_SIZE_REQUEST_TYPE_SCALES : FT_Size_Request_Type = 4; +pub const FT_SIZE_REQUEST_TYPE_MAX : FT_Size_Request_Type = 5; pub type FT_Kerning_Mode = c_uint; -pub static FT_KERNING_DEFAULT : FT_Kerning_Mode = 0; -pub static FT_KERNING_UNFITTED : FT_Kerning_Mode = 1; -pub static FT_KERNING_UNSCALED : FT_Kerning_Mode = 2; +pub const FT_KERNING_DEFAULT : FT_Kerning_Mode = 0; +pub const FT_KERNING_UNFITTED : FT_Kerning_Mode = 1; +pub const FT_KERNING_UNSCALED : FT_Kerning_Mode = 2; pub type FT_Glyph_BBox_Mode = c_uint; -pub static FT_GLYPH_BBOX_UNSCALED : FT_Glyph_BBox_Mode = 0; -pub static FT_GLYPH_BBOX_SUBPIXELS : FT_Glyph_BBox_Mode = 0; -pub static FT_GLYPH_BBOX_GRIDFIT : FT_Glyph_BBox_Mode = 1; -pub static FT_GLYPH_BBOX_TRUNCATE : FT_Glyph_BBox_Mode = 2; -pub static FT_GLYPH_BBOX_PIXELS : FT_Glyph_BBox_Mode = 3; +pub const FT_GLYPH_BBOX_UNSCALED : FT_Glyph_BBox_Mode = 0; +pub const FT_GLYPH_BBOX_SUBPIXELS : FT_Glyph_BBox_Mode = 0; +pub const FT_GLYPH_BBOX_GRIDFIT : FT_Glyph_BBox_Mode = 1; +pub const FT_GLYPH_BBOX_TRUNCATE : FT_Glyph_BBox_Mode = 2; +pub const FT_GLYPH_BBOX_PIXELS : FT_Glyph_BBox_Mode = 3; // Constants -pub static FT_FACE_FLAG_SCALABLE : FT_Long = 1 << 0; -pub static FT_FACE_FLAG_FIXED_SIZES : FT_Long = 1 << 1; -pub static FT_FACE_FLAG_FIXED_WIDTH : FT_Long = 1 << 2; -pub static FT_FACE_FLAG_SFNT : FT_Long = 1 << 3; -pub static FT_FACE_FLAG_HORIZONTAL : FT_Long = 1 << 4; -pub static FT_FACE_FLAG_VERTICAL : FT_Long = 1 << 5; -pub static FT_FACE_FLAG_KERNING : FT_Long = 1 << 6; -pub static FT_FACE_FLAG_FAST_GLYPHS : FT_Long = 1 << 7; -pub static FT_FACE_FLAG_MULTIPLE_MASTERS : FT_Long = 1 << 8; -pub static FT_FACE_FLAG_GLYPH_NAMES : FT_Long = 1 << 9; -pub static FT_FACE_FLAG_EXTERNAL_STREAM : FT_Long = 1 << 10; -pub static FT_FACE_FLAG_HINTER : FT_Long = 1 << 11; -pub static FT_FACE_FLAG_CID_KEYED : FT_Long = 1 << 12; -pub static FT_FACE_FLAG_TRICKY : FT_Long = 1 << 13; -pub static FT_FACE_FLAG_COLOR : FT_Long = 1 << 14; - -pub static FT_STYLE_FLAG_ITALIC : FT_Long = 1 << 0; -pub static FT_STYLE_FLAG_BOLD : FT_Long = 1 << 1; - -pub static FT_OPEN_MEMORY : FT_UInt = 0x1; -pub static FT_OPEN_STREAM : FT_UInt = 0x2; -pub static FT_OPEN_PATHNAME : FT_UInt = 0x4; -pub static FT_OPEN_DRIVER : FT_UInt = 0x8; -pub static FT_OPEN_PARAMS : FT_UInt = 0x10; - -pub static FT_SUBGLYPH_FLAG_ARGS_ARE_WORDS : FT_UInt = 1; -pub static FT_SUBGLYPH_FLAG_ARGS_ARE_XY_VALUES : FT_UInt = 2; -pub static FT_SUBGLYPH_FLAG_ROUND_XY_TO_GRID : FT_UInt = 4; -pub static FT_SUBGLYPH_FLAG_SCALE : FT_UInt = 8; -pub static FT_SUBGLYPH_FLAG_XY_SCALE : FT_UInt = 0x40; -pub static FT_SUBGLYPH_FLAG_2X2 : FT_UInt = 0x80; -pub static FT_SUBGLYPH_FLAG_USE_MY_METRICS : FT_UInt = 0x200; - -pub static FT_LOAD_DEFAULT : FT_Int32 = 0x0; -pub static FT_LOAD_NO_SCALE : FT_Int32 = 0x1 << 0; -pub static FT_LOAD_NO_HINTING : FT_Int32 = 0x1 << 1; -pub static FT_LOAD_RENDER : FT_Int32 = 0x1 << 2; -pub static FT_LOAD_NO_BITMAP : FT_Int32 = 0x1 << 3; -pub static FT_LOAD_VERTICAL_LAYOUT : FT_Int32 = 0x1 << 4; -pub static FT_LOAD_FORCE_AUTOHINT : FT_Int32 = 0x1 << 5; -pub static FT_LOAD_CROP_BITMAP : FT_Int32 = 0x1 << 6; -pub static FT_LOAD_PENDANTIC : FT_Int32 = 0x1 << 7; -pub static FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH : FT_Int32 = 0x1 << 9; -pub static FT_LOAD_NO_RECURSE : FT_Int32 = 0x1 << 10; -pub static FT_LOAD_IGNORE_TRANSFORM : FT_Int32 = 0x1 << 11; -pub static FT_LOAD_MONOCHROME : FT_Int32 = 0x1 << 12; -pub static FT_LOAD_LINEAR_DESIGN : FT_Int32 = 0x1 << 13; -pub static FT_LOAD_NO_AUTOHINT : FT_Int32 = 0x1 << 15; +pub const FT_FACE_FLAG_SCALABLE : FT_Long = 1 << 0; +pub const FT_FACE_FLAG_FIXED_SIZES : FT_Long = 1 << 1; +pub const FT_FACE_FLAG_FIXED_WIDTH : FT_Long = 1 << 2; +pub const FT_FACE_FLAG_SFNT : FT_Long = 1 << 3; +pub const FT_FACE_FLAG_HORIZONTAL : FT_Long = 1 << 4; +pub const FT_FACE_FLAG_VERTICAL : FT_Long = 1 << 5; +pub const FT_FACE_FLAG_KERNING : FT_Long = 1 << 6; +pub const FT_FACE_FLAG_FAST_GLYPHS : FT_Long = 1 << 7; +pub const FT_FACE_FLAG_MULTIPLE_MASTERS : FT_Long = 1 << 8; +pub const FT_FACE_FLAG_GLYPH_NAMES : FT_Long = 1 << 9; +pub const FT_FACE_FLAG_EXTERNAL_STREAM : FT_Long = 1 << 10; +pub const FT_FACE_FLAG_HINTER : FT_Long = 1 << 11; +pub const FT_FACE_FLAG_CID_KEYED : FT_Long = 1 << 12; +pub const FT_FACE_FLAG_TRICKY : FT_Long = 1 << 13; +pub const FT_FACE_FLAG_COLOR : FT_Long = 1 << 14; + +pub const FT_STYLE_FLAG_ITALIC : FT_Long = 1 << 0; +pub const FT_STYLE_FLAG_BOLD : FT_Long = 1 << 1; + +pub const FT_OPEN_MEMORY : FT_UInt = 0x1; +pub const FT_OPEN_STREAM : FT_UInt = 0x2; +pub const FT_OPEN_PATHNAME : FT_UInt = 0x4; +pub const FT_OPEN_DRIVER : FT_UInt = 0x8; +pub const FT_OPEN_PARAMS : FT_UInt = 0x10; + +pub const FT_SUBGLYPH_FLAG_ARGS_ARE_WORDS : FT_UInt = 1; +pub const FT_SUBGLYPH_FLAG_ARGS_ARE_XY_VALUES : FT_UInt = 2; +pub const FT_SUBGLYPH_FLAG_ROUND_XY_TO_GRID : FT_UInt = 4; +pub const FT_SUBGLYPH_FLAG_SCALE : FT_UInt = 8; +pub const FT_SUBGLYPH_FLAG_XY_SCALE : FT_UInt = 0x40; +pub const FT_SUBGLYPH_FLAG_2X2 : FT_UInt = 0x80; +pub const FT_SUBGLYPH_FLAG_USE_MY_METRICS : FT_UInt = 0x200; + +pub const FT_LOAD_DEFAULT : FT_Int32 = 0x0; +pub const FT_LOAD_NO_SCALE : FT_Int32 = 0x1 << 0; +pub const FT_LOAD_NO_HINTING : FT_Int32 = 0x1 << 1; +pub const FT_LOAD_RENDER : FT_Int32 = 0x1 << 2; +pub const FT_LOAD_NO_BITMAP : FT_Int32 = 0x1 << 3; +pub const FT_LOAD_VERTICAL_LAYOUT : FT_Int32 = 0x1 << 4; +pub const FT_LOAD_FORCE_AUTOHINT : FT_Int32 = 0x1 << 5; +pub const FT_LOAD_CROP_BITMAP : FT_Int32 = 0x1 << 6; +pub const FT_LOAD_PENDANTIC : FT_Int32 = 0x1 << 7; +pub const FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH : FT_Int32 = 0x1 << 9; +pub const FT_LOAD_NO_RECURSE : FT_Int32 = 0x1 << 10; +pub const FT_LOAD_IGNORE_TRANSFORM : FT_Int32 = 0x1 << 11; +pub const FT_LOAD_MONOCHROME : FT_Int32 = 0x1 << 12; +pub const FT_LOAD_LINEAR_DESIGN : FT_Int32 = 0x1 << 13; +pub const FT_LOAD_NO_AUTOHINT : FT_Int32 = 0x1 << 15; // Bits 16..19 are used by `FT_LOAD_TARGET` -pub static FT_LOAD_COLOR : FT_Int32 = 0x1 << 20; - -pub static FT_LOAD_TARGET_NORMAL : FT_Int32 = (FT_RENDER_MODE_NORMAL << 16) as FT_Int32; -pub static FT_LOAD_TARGET_LIGHT : FT_Int32 = (FT_RENDER_MODE_LIGHT << 16) as FT_Int32; -pub static FT_LOAD_TARGET_MONO : FT_Int32 = (FT_RENDER_MODE_MONO << 16) as FT_Int32; -pub static FT_LOAD_TARGET_LCD : FT_Int32 = (FT_RENDER_MODE_LCD << 16) as FT_Int32; -pub static FT_LOAD_TARGET_LCD_V : FT_Int32 = (FT_RENDER_MODE_LCD_V << 16) as FT_Int32; - -pub static FT_FSTYPE_INSTALLABLE_EMBEDDING : FT_UShort = 0x0000; -pub static FT_FSTYPE_RESTRICTED_LICENSE_EMBEDDING : FT_UShort = 0x0002; -pub static FT_FSTYPE_PREVIEW_AND_PRINT_EMBEDDING : FT_UShort = 0x0004; -pub static FT_FSTYPE_EDITABLE_EMBEDDING : FT_UShort = 0x0008; -pub static FT_FSTYPE_NO_SUBSETTING : FT_UShort = 0x0100; -pub static FT_FSTYPE_BITMAP_EMBEDDING_ONLY : FT_UShort = 0x0200; - -pub static FT_Err_Ok : FT_Error = 0; -pub static FT_Err_Cannot_Open_Resource : FT_Error = 1; -pub static FT_Err_Unknown_File_Format : FT_Error = 2; -pub static FT_Err_Invalid_File_Format : FT_Error = 3; -pub static FT_Err_Invalid_Version : FT_Error = 4; -pub static FT_Err_Lower_Module_Version : FT_Error = 5; -pub static FT_Err_Invalid_Argument : FT_Error = 6; -pub static FT_Err_Unimplemented_Feature : FT_Error = 7; -pub static FT_Err_Invalid_Table : FT_Error = 8; -pub static FT_Err_Invalid_Offset : FT_Error = 9; -pub static FT_Err_Array_Too_Large : FT_Error = 10; -pub static FT_Err_Missing_Module : FT_Error = 11; -pub static FT_Err_Missing_Property : FT_Error = 12; -pub static FT_Err_Invalid_Glyph_Index : FT_Error = 16; -pub static FT_Err_Invalid_Character_Code : FT_Error = 17; -pub static FT_Err_Invalid_Glyph_Format : FT_Error = 18; -pub static FT_Err_Cannot_Render_Glyph : FT_Error = 19; -pub static FT_Err_Invalid_Outline : FT_Error = 20; -pub static FT_Err_Invalid_Composite : FT_Error = 21; -pub static FT_Err_Too_Many_Hints : FT_Error = 22; -pub static FT_Err_Invalid_Pixel_Size : FT_Error = 23; -pub static FT_Err_Invalid_Handle : FT_Error = 32; -pub static FT_Err_Invalid_Library_Handle : FT_Error = 33; -pub static FT_Err_Invalid_Driver_Handle : FT_Error = 34; -pub static FT_Err_Invalid_Face_Handle : FT_Error = 35; -pub static FT_Err_Invalid_Size_Handle : FT_Error = 36; -pub static FT_Err_Invalid_Slot_Handle : FT_Error = 37; -pub static FT_Err_Invalid_CharMap_Handle : FT_Error = 38; -pub static FT_Err_Invalid_Cache_Handle : FT_Error = 39; -pub static FT_Err_Invalid_Stream_Handle : FT_Error = 40; -pub static FT_Err_Too_Many_Drivers : FT_Error = 48; -pub static FT_Err_Too_Many_Extensions : FT_Error = 49; -pub static FT_Err_Out_Of_Memory : FT_Error = 64; -pub static FT_Err_Unlisted_Object : FT_Error = 65; -pub static FT_Err_Cannot_Open_Stream : FT_Error = 81; -pub static FT_Err_Invalid_Stream_Seek : FT_Error = 82; -pub static FT_Err_Invalid_Stream_Skip : FT_Error = 83; -pub static FT_Err_Invalid_Stream_Read : FT_Error = 84; -pub static FT_Err_Invalid_Stream_Operation : FT_Error = 85; -pub static FT_Err_Invalid_Frame_Operation : FT_Error = 86; -pub static FT_Err_Nested_Frame_Access : FT_Error = 87; -pub static FT_Err_Invalid_Frame_Read : FT_Error = 88; -pub static FT_Err_Raster_Uninitialized : FT_Error = 96; -pub static FT_Err_Raster_Corrupted : FT_Error = 97; -pub static FT_Err_Raster_Overflow : FT_Error = 98; -pub static FT_Err_Raster_Negative_Height : FT_Error = 99; -pub static FT_Err_Too_Many_Caches : FT_Error = 112; -pub static FT_Err_Invalid_Opcode : FT_Error = 128; -pub static FT_Err_Too_Few_Arguments : FT_Error = 129; -pub static FT_Err_Stack_Overflow : FT_Error = 130; -pub static FT_Err_Code_Overflow : FT_Error = 131; -pub static FT_Err_Bad_Argument : FT_Error = 132; -pub static FT_Err_Divide_By_Zero : FT_Error = 133; -pub static FT_Err_Invalid_Reference : FT_Error = 134; -pub static FT_Err_Debug_OpCode : FT_Error = 135; -pub static FT_Err_ENDF_In_Exec_Stream : FT_Error = 136; -pub static FT_Err_Nested_DEFS : FT_Error = 137; -pub static FT_Err_Invalid_CodeRange : FT_Error = 138; -pub static FT_Err_Execution_Too_Long : FT_Error = 139; -pub static FT_Err_Too_Many_Function_Defs : FT_Error = 140; -pub static FT_Err_Too_Many_Instruction_Defs : FT_Error = 141; -pub static FT_Err_Table_Missing : FT_Error = 142; -pub static FT_Err_Horiz_Header_Missing : FT_Error = 143; -pub static FT_Err_Locations_Missing : FT_Error = 144; -pub static FT_Err_Name_Table_Missing : FT_Error = 145; -pub static FT_Err_CMap_Table_Missing : FT_Error = 146; -pub static FT_Err_Hmtx_Table_Missing : FT_Error = 147; -pub static FT_Err_Post_Table_Missing : FT_Error = 148; -pub static FT_Err_Invalid_Horiz_Metrics : FT_Error = 149; -pub static FT_Err_Invalid_CharMap_Format : FT_Error = 150; -pub static FT_Err_Invalid_PPem : FT_Error = 151; -pub static FT_Err_Invalid_Vert_Metrics : FT_Error = 152; -pub static FT_Err_Could_Not_Find_Context : FT_Error = 153; -pub static FT_Err_Invalid_Post_Table_Format : FT_Error = 154; -pub static FT_Err_Invalid_Post_Table : FT_Error = 155; -pub static FT_Err_Syntax_Error : FT_Error = 160; -pub static FT_Err_Stack_Underflow : FT_Error = 161; -pub static FT_Err_Ignore : FT_Error = 162; -pub static FT_Err_No_Unicode_Glyph_Name : FT_Error = 163; -pub static FT_Err_Missing_Startfont_Field : FT_Error = 176; -pub static FT_Err_Missing_Font_Field : FT_Error = 177; -pub static FT_Err_Missing_Size_Field : FT_Error = 178; -pub static FT_Err_Missing_Fontboundingbox_Field : FT_Error = 179; -pub static FT_Err_Missing_Chars_Field : FT_Error = 180; -pub static FT_Err_Missing_Startchar_Field : FT_Error = 181; -pub static FT_Err_Missing_Encoding_Field : FT_Error = 182; -pub static FT_Err_Missing_Bbx_Field : FT_Error = 183; -pub static FT_Err_Bbx_Too_Big : FT_Error = 184; -pub static FT_Err_Corrupted_Font_Header : FT_Error = 185; -pub static FT_Err_Corrupted_Font_Glyphs : FT_Error = 186; -pub static FT_Err_Max : FT_Error = 187; +pub const FT_LOAD_COLOR : FT_Int32 = 0x1 << 20; + +pub const FT_LOAD_TARGET_NORMAL : FT_Int32 = (FT_RENDER_MODE_NORMAL << 16) as FT_Int32; +pub const FT_LOAD_TARGET_LIGHT : FT_Int32 = (FT_RENDER_MODE_LIGHT << 16) as FT_Int32; +pub const FT_LOAD_TARGET_MONO : FT_Int32 = (FT_RENDER_MODE_MONO << 16) as FT_Int32; +pub const FT_LOAD_TARGET_LCD : FT_Int32 = (FT_RENDER_MODE_LCD << 16) as FT_Int32; +pub const FT_LOAD_TARGET_LCD_V : FT_Int32 = (FT_RENDER_MODE_LCD_V << 16) as FT_Int32; + +pub const FT_FSTYPE_INSTALLABLE_EMBEDDING : FT_UShort = 0x0000; +pub const FT_FSTYPE_RESTRICTED_LICENSE_EMBEDDING : FT_UShort = 0x0002; +pub const FT_FSTYPE_PREVIEW_AND_PRINT_EMBEDDING : FT_UShort = 0x0004; +pub const FT_FSTYPE_EDITABLE_EMBEDDING : FT_UShort = 0x0008; +pub const FT_FSTYPE_NO_SUBSETTING : FT_UShort = 0x0100; +pub const FT_FSTYPE_BITMAP_EMBEDDING_ONLY : FT_UShort = 0x0200; + +pub const FT_Err_Ok : FT_Error = 0; +pub const FT_Err_Cannot_Open_Resource : FT_Error = 1; +pub const FT_Err_Unknown_File_Format : FT_Error = 2; +pub const FT_Err_Invalid_File_Format : FT_Error = 3; +pub const FT_Err_Invalid_Version : FT_Error = 4; +pub const FT_Err_Lower_Module_Version : FT_Error = 5; +pub const FT_Err_Invalid_Argument : FT_Error = 6; +pub const FT_Err_Unimplemented_Feature : FT_Error = 7; +pub const FT_Err_Invalid_Table : FT_Error = 8; +pub const FT_Err_Invalid_Offset : FT_Error = 9; +pub const FT_Err_Array_Too_Large : FT_Error = 10; +pub const FT_Err_Missing_Module : FT_Error = 11; +pub const FT_Err_Missing_Property : FT_Error = 12; +pub const FT_Err_Invalid_Glyph_Index : FT_Error = 16; +pub const FT_Err_Invalid_Character_Code : FT_Error = 17; +pub const FT_Err_Invalid_Glyph_Format : FT_Error = 18; +pub const FT_Err_Cannot_Render_Glyph : FT_Error = 19; +pub const FT_Err_Invalid_Outline : FT_Error = 20; +pub const FT_Err_Invalid_Composite : FT_Error = 21; +pub const FT_Err_Too_Many_Hints : FT_Error = 22; +pub const FT_Err_Invalid_Pixel_Size : FT_Error = 23; +pub const FT_Err_Invalid_Handle : FT_Error = 32; +pub const FT_Err_Invalid_Library_Handle : FT_Error = 33; +pub const FT_Err_Invalid_Driver_Handle : FT_Error = 34; +pub const FT_Err_Invalid_Face_Handle : FT_Error = 35; +pub const FT_Err_Invalid_Size_Handle : FT_Error = 36; +pub const FT_Err_Invalid_Slot_Handle : FT_Error = 37; +pub const FT_Err_Invalid_CharMap_Handle : FT_Error = 38; +pub const FT_Err_Invalid_Cache_Handle : FT_Error = 39; +pub const FT_Err_Invalid_Stream_Handle : FT_Error = 40; +pub const FT_Err_Too_Many_Drivers : FT_Error = 48; +pub const FT_Err_Too_Many_Extensions : FT_Error = 49; +pub const FT_Err_Out_Of_Memory : FT_Error = 64; +pub const FT_Err_Unlisted_Object : FT_Error = 65; +pub const FT_Err_Cannot_Open_Stream : FT_Error = 81; +pub const FT_Err_Invalid_Stream_Seek : FT_Error = 82; +pub const FT_Err_Invalid_Stream_Skip : FT_Error = 83; +pub const FT_Err_Invalid_Stream_Read : FT_Error = 84; +pub const FT_Err_Invalid_Stream_Operation : FT_Error = 85; +pub const FT_Err_Invalid_Frame_Operation : FT_Error = 86; +pub const FT_Err_Nested_Frame_Access : FT_Error = 87; +pub const FT_Err_Invalid_Frame_Read : FT_Error = 88; +pub const FT_Err_Raster_Uninitialized : FT_Error = 96; +pub const FT_Err_Raster_Corrupted : FT_Error = 97; +pub const FT_Err_Raster_Overflow : FT_Error = 98; +pub const FT_Err_Raster_Negative_Height : FT_Error = 99; +pub const FT_Err_Too_Many_Caches : FT_Error = 112; +pub const FT_Err_Invalid_Opcode : FT_Error = 128; +pub const FT_Err_Too_Few_Arguments : FT_Error = 129; +pub const FT_Err_Stack_Overflow : FT_Error = 130; +pub const FT_Err_Code_Overflow : FT_Error = 131; +pub const FT_Err_Bad_Argument : FT_Error = 132; +pub const FT_Err_Divide_By_Zero : FT_Error = 133; +pub const FT_Err_Invalid_Reference : FT_Error = 134; +pub const FT_Err_Debug_OpCode : FT_Error = 135; +pub const FT_Err_ENDF_In_Exec_Stream : FT_Error = 136; +pub const FT_Err_Nested_DEFS : FT_Error = 137; +pub const FT_Err_Invalid_CodeRange : FT_Error = 138; +pub const FT_Err_Execution_Too_Long : FT_Error = 139; +pub const FT_Err_Too_Many_Function_Defs : FT_Error = 140; +pub const FT_Err_Too_Many_Instruction_Defs : FT_Error = 141; +pub const FT_Err_Table_Missing : FT_Error = 142; +pub const FT_Err_Horiz_Header_Missing : FT_Error = 143; +pub const FT_Err_Locations_Missing : FT_Error = 144; +pub const FT_Err_Name_Table_Missing : FT_Error = 145; +pub const FT_Err_CMap_Table_Missing : FT_Error = 146; +pub const FT_Err_Hmtx_Table_Missing : FT_Error = 147; +pub const FT_Err_Post_Table_Missing : FT_Error = 148; +pub const FT_Err_Invalid_Horiz_Metrics : FT_Error = 149; +pub const FT_Err_Invalid_CharMap_Format : FT_Error = 150; +pub const FT_Err_Invalid_PPem : FT_Error = 151; +pub const FT_Err_Invalid_Vert_Metrics : FT_Error = 152; +pub const FT_Err_Could_Not_Find_Context : FT_Error = 153; +pub const FT_Err_Invalid_Post_Table_Format : FT_Error = 154; +pub const FT_Err_Invalid_Post_Table : FT_Error = 155; +pub const FT_Err_Syntax_Error : FT_Error = 160; +pub const FT_Err_Stack_Underflow : FT_Error = 161; +pub const FT_Err_Ignore : FT_Error = 162; +pub const FT_Err_No_Unicode_Glyph_Name : FT_Error = 163; +pub const FT_Err_Missing_Startfont_Field : FT_Error = 176; +pub const FT_Err_Missing_Font_Field : FT_Error = 177; +pub const FT_Err_Missing_Size_Field : FT_Error = 178; +pub const FT_Err_Missing_Fontboundingbox_Field : FT_Error = 179; +pub const FT_Err_Missing_Chars_Field : FT_Error = 180; +pub const FT_Err_Missing_Startchar_Field : FT_Error = 181; +pub const FT_Err_Missing_Encoding_Field : FT_Error = 182; +pub const FT_Err_Missing_Bbx_Field : FT_Error = 183; +pub const FT_Err_Bbx_Too_Big : FT_Error = 184; +pub const FT_Err_Corrupted_Font_Header : FT_Error = 185; +pub const FT_Err_Corrupted_Font_Glyphs : FT_Error = 186; +pub const FT_Err_Max : FT_Error = 187; // Objects pub type FT_Library = *mut FT_LibraryRec;