Package org.lwjgl.util.freetype
@NullMarked
package org.lwjgl.util.freetype
Contains bindings to the FreeType, a freely available software library to render fonts.
It is written in C, designed to be small, efficient, highly customizable, and portable while capable of producing high-quality output (glyph images) of most vector and bitmap font formats.
Resources
-
ClassDescription
struct BDF_PropertyRec { BDF_PropertyType type; union { char const * atom; FT_Int32 integer; FT_UInt32 cardinal; } u; }An array ofBDF_Propertystructs.struct CID_FaceDictRec {PS_PrivateRecprivate_dict; FT_UInt len_buildchar; FT_Fixed forcebold_threshold; FT_Pos stroke_width; FT_Fixed expansion_factor; FT_Byte paint_type; FT_Byte font_type;FT_Matrixfont_matrix;FT_Vectorfont_offset; FT_UInt num_subrs; FT_ULong subrmap_offset; FT_UInt sd_bytes; }An array ofCID_FaceDictstructs.struct CID_FaceInfoRec { FT_String * cid_font_name; FT_Fixed cid_version; FT_Int cid_font_type; FT_String * registry; FT_String * ordering; FT_Int supplement;PS_FontInfoRecfont_info;FT_BBoxfont_bbox; FT_ULong uid_base; FT_Int num_xuid; FT_ULong xuid[16]; FT_ULong cidmap_offset; FT_UInt fd_bytes; FT_UInt gd_bytes; FT_ULong cid_count; FT_UInt num_dicts;CID_FaceDictfont_dicts; FT_ULong data_offset; }An array ofCID_FaceInfostructs.Contains the function pointers loaded from the freetypeSharedLibrary.struct FT_Affine23 { FT_Fixed xx; FT_Fixed xy; FT_Fixed dx; FT_Fixed yx; FT_Fixed yy; FT_Fixed dy; }An array ofFT_Affine23structs.Callback function:FT_Alloc_FuncCallback function:FT_Alloc_Funcstruct FT_BBox { FT_Pos xMin; FT_Pos yMin; FT_Pos xMax; FT_Pos yMax; }An array ofFT_BBoxstructs.struct FT_Bitmap { unsigned int rows; unsigned int width; int pitch; unsigned char * buffer; unsigned short num_grays; unsigned char pixel_mode; unsigned char palette_mode; void * palette; }struct FT_Bitmap_Size { FT_Short height; FT_Short width; FT_Pos size; FT_Pos x_ppem; FT_Pos y_ppem; }An array ofFT_Bitmap_Sizestructs.An array ofFT_Bitmapstructs.struct FT_BitmapGlyphRec {FT_GlyphRecroot; FT_Int left; FT_Int top;FT_Bitmapbitmap; }An array ofFT_BitmapGlyphstructs.struct FT_CharMapRec {FT_Faceface; FT_Encoding encoding; FT_UShort platform_id; FT_UShort encoding_id; }An array ofFT_CharMapstructs.An array ofFT_ClipBoxstructs.struct FT_Color { FT_Byte blue; FT_Byte green; FT_Byte red; FT_Byte alpha; }An array ofFT_Colorstructs.struct FT_ColorIndex { FT_UInt16 palette_index; FT_F2Dot14 alpha; }An array ofFT_ColorIndexstructs.struct FT_ColorLine { FT_PaintExtend extend;FT_ColorStopIteratorcolor_stop_iterator; }An array ofFT_ColorLinestructs.struct FT_ColorStop { FT_Fixed stop_offset;FT_ColorIndexcolor; }An array ofFT_ColorStopstructs.struct FT_ColorStopIterator { FT_UInt num_color_stops; FT_UInt current_color_stop; FT_Byte * p; FT_Bool read_variable; }An array ofFT_ColorStopIteratorstructs.struct FT_COLR_Paint { FT_PaintFormat format; union {FT_PaintColrLayerscolr_layers;FT_PaintGlyphglyph;FT_PaintSolidsolid;FT_PaintLinearGradientlinear_gradient;FT_PaintRadialGradientradial_gradient;FT_PaintSweepGradientsweep_gradient;FT_PaintTransformtransform;FT_PaintTranslatetranslate;FT_PaintScalescale;FT_PaintRotaterotate;FT_PaintSkewskew;FT_PaintCompositecomposite;FT_PaintColrGlyphcolr_glyph; } u; }An array ofFT_COLR_Paintstructs.struct FT_Data { FT_Byte const * pointer; FT_UInt length; }An array ofFT_Datastructs.Callback function:FT_DebugHook_FuncCallback function:FT_DebugHook_Funcstruct FT_FaceRec { FT_Long num_faces; FT_Long face_index; FT_Long face_flags; FT_Long style_flags; FT_Long num_glyphs; FT_String * family_name; FT_String * style_name; FT_Int num_fixed_sizes;FT_Bitmap_Size* available_sizes; FT_Int num_charmaps;FT_CharMap* charmaps;FT_Genericgeneric;FT_BBoxbbox; FT_UShort units_per_EM; FT_Short ascender; FT_Short descender; FT_Short height; FT_Short max_advance_width; FT_Short max_advance_height; FT_Short underline_position; FT_Short underline_thickness;FT_GlyphSlotglyph;FT_Sizesize;FT_CharMapcharmap; FT_Driver driver; FT_Memory memory;FT_Streamstream;FT_ListRecsizes_list;FT_Genericautohint; void * extensions; FT_Face_Internal internal; }An array ofFT_Facestructs.Callback function:FT_Free_FuncCallback function:FT_Free_Funcstruct FT_Generic { void * data;FT_Generic_Finalizerfinalizer; }Callback function:FT_Generic_FinalizerCallback function:FT_Generic_FinalizerAn array ofFT_Genericstructs.struct FT_GlyphRec { FT_Library library; FT_Glyph_Class const * clazz; FT_Glyph_Format format;FT_Vectoradvance; }struct FT_Glyph_Metrics { FT_Pos width; FT_Pos height; FT_Pos horiBearingX; FT_Pos horiBearingY; FT_Pos horiAdvance; FT_Pos vertBearingX; FT_Pos vertBearingY; FT_Pos vertAdvance; }An array ofFT_Glyph_Metricsstructs.An array ofFT_Glyphstructs.struct FT_GlyphSlotRec { FT_Library library;FT_Faceface;FT_GlyphSlotnext; FT_UInt glyph_index;FT_Genericgeneric;FT_Glyph_Metricsmetrics; FT_Fixed linearHoriAdvance; FT_Fixed linearVertAdvance;FT_Vectoradvance; FT_Glyph_Format format;FT_Bitmapbitmap; FT_Int bitmap_left; FT_Int bitmap_top;FT_Outlineoutline; FT_UInt num_subglyphs; FT_SubGlyph subglyphs; void * control_data; long control_len; FT_Pos lsb_delta; FT_Pos rsb_delta; void * other; FT_Slot_Internal internal; }An array ofFT_GlyphSlotstructs.Callback function:FT_Incremental_FreeGlyphDataFuncCallback function:FT_Incremental_FreeGlyphDataFuncstruct FT_Incremental_FuncsRec {FT_Incremental_GetGlyphDataFuncget_glyph_data;FT_Incremental_FreeGlyphDataFuncfree_glyph_data;FT_Incremental_GetGlyphMetricsFuncget_glyph_metrics; }An array ofFT_Incremental_Funcsstructs.Callback function:FT_Incremental_GetGlyphDataFuncCallback function:FT_Incremental_GetGlyphDataFuncCallback function:FT_Incremental_GetGlyphMetricsFuncCallback function:FT_Incremental_GetGlyphMetricsFuncstruct FT_Incremental_InterfaceRec {FT_Incremental_FuncsRecconst * funcs; FT_Incremental object; }An array ofFT_Incremental_Interfacestructs.struct FT_Incremental_MetricsRec { FT_Long bearing_x; FT_Long bearing_y; FT_Long advance; FT_Long advance_v; }An array ofFT_Incremental_Metricsstructs.struct FT_LayerIterator { FT_UInt num_layers; FT_UInt layer; FT_Byte * p; }An array ofFT_LayerIteratorstructs.struct FT_ListRec {FT_ListNodehead;FT_ListNodetail; }Callback function:FT_List_DestructorCallback function:FT_List_DestructorCallback function:FT_List_IteratorCallback function:FT_List_IteratorAn array ofFT_Liststructs.struct FT_ListNodeRec {FT_ListNodeprev;FT_ListNodenext; void * data; }An array ofFT_ListNodestructs.struct FT_Matrix { FT_Fixed xx; FT_Fixed xy; FT_Fixed yx; FT_Fixed yy; }An array ofFT_Matrixstructs.struct FT_MemoryRec_ { void * user;FT_Alloc_Funcalloc;FT_Free_Funcfree;FT_Realloc_Funcrealloc; }An array ofFT_Memorystructs.struct FT_MM_Axis { FT_String * name; FT_Long minimum; FT_Long maximum; }An array ofFT_MM_Axisstructs.struct FT_MM_Var { FT_UInt num_axis; FT_UInt num_designs; FT_UInt num_namedstyles;FT_Var_Axis* axis;FT_Var_Named_Style* namedstyle; }An array ofFT_MM_Varstructs.struct FT_Module_Class { FT_ULong module_flags; FT_Long module_size; FT_String const * module_name; FT_Fixed module_version; FT_Fixed module_requires; void const * module_interface;FT_Module_Constructormodule_init;FT_Module_Destructormodule_done;FT_Module_Requesterget_interface; }An array ofFT_Module_Classstructs.Callback function:FT_Module_ConstructorCallback function:FT_Module_ConstructorCallback function:FT_Module_DestructorCallback function:FT_Module_DestructorCallback function:FT_Module_RequesterCallback function:FT_Module_Requesterstruct FT_Multi_Master { FT_UInt num_axis; FT_UInt num_designs;FT_MM_Axisaxis[T1_MAX_MM_AXIS]; }An array ofFT_Multi_Masterstructs.struct FT_OpaquePaintRec { FT_Byte * p; FT_Bool insert_root_transform; }An array ofFT_OpaquePaintstructs.struct FT_Open_Args { FT_UInt flags; FT_Byte const * memory_base; FT_Long memory_size; FT_String * pathname;FT_Streamstream; FT_Module driver; FT_Int num_params;FT_Parameter* params; }An array ofFT_Open_Argsstructs.struct FT_Outline { unsigned short n_contours; unsigned short n_points;FT_Vector* points; unsigned char * tags; unsigned short * contours; int flags; }Callback function:FT_Outline_ConicToFuncCallback function:FT_Outline_ConicToFuncCallback function:FT_Outline_CubicToFuncCallback function:FT_Outline_CubicToFuncstruct FT_Outline_Funcs {FT_Outline_MoveToFuncmove_to;FT_Outline_LineToFuncline_to;FT_Outline_ConicToFuncconic_to;FT_Outline_CubicToFunccubic_to; int shift; FT_Pos delta; }An array ofFT_Outline_Funcsstructs.Callback function:FT_Outline_LineToFuncCallback function:FT_Outline_LineToFuncCallback function:FT_Outline_MoveToFuncCallback function:FT_Outline_MoveToFuncAn array ofFT_Outlinestructs.struct FT_OutlineGlyphRec {FT_GlyphRecroot;FT_Outlineoutline; }An array ofFT_OutlineGlyphstructs.struct FT_PaintColrGlyph { FT_UInt glyphID; }An array ofFT_PaintColrGlyphstructs.struct FT_PaintColrLayers {FT_LayerIteratorlayer_iterator; }An array ofFT_PaintColrLayersstructs.struct FT_PaintComposite {FT_OpaquePaintRecsource_paint; FT_Composite_Mode composite_mode;FT_OpaquePaintRecbackdrop_paint; }An array ofFT_PaintCompositestructs.struct FT_PaintGlyph {FT_OpaquePaintRecpaint; FT_UInt glyphID; }An array ofFT_PaintGlyphstructs.struct FT_PaintLinearGradient {FT_ColorLinecolorline;FT_Vectorp0;FT_Vectorp1;FT_Vectorp2; }An array ofFT_PaintLinearGradientstructs.struct FT_PaintRadialGradient {FT_ColorLinecolorline;FT_Vectorc0; FT_Pos r0;FT_Vectorc1; FT_Pos r1; }An array ofFT_PaintRadialGradientstructs.struct FT_PaintRotate {FT_OpaquePaintRecpaint; FT_Fixed angle; FT_Fixed center_x; FT_Fixed center_y; }An array ofFT_PaintRotatestructs.struct FT_PaintScale {FT_OpaquePaintRecpaint; FT_Fixed scale_x; FT_Fixed scale_y; FT_Fixed center_x; FT_Fixed center_y; }An array ofFT_PaintScalestructs.struct FT_PaintSkew {FT_OpaquePaintRecpaint; FT_Fixed x_skew_angle; FT_Fixed y_skew_angle; FT_Fixed center_x; FT_Fixed center_y; }An array ofFT_PaintSkewstructs.struct FT_PaintSolid {FT_ColorIndexcolor; }An array ofFT_PaintSolidstructs.struct FT_PaintSweepGradient {FT_ColorLinecolorline;FT_Vectorcenter; FT_Fixed start_angle; FT_Fixed end_angle; }An array ofFT_PaintSweepGradientstructs.struct FT_PaintTransform {FT_OpaquePaintRecpaint;FT_Affine23affine; }An array ofFT_PaintTransformstructs.struct FT_PaintTranslate {FT_OpaquePaintRecpaint; FT_Fixed dx; FT_Fixed dy; }An array ofFT_PaintTranslatestructs.struct FT_Palette_Data { FT_UShort num_palettes; FT_UShort const * palette_name_ids; FT_UShort const * palette_flags; FT_UShort num_palette_entries; FT_UShort const * palette_entry_name_ids; }An array ofFT_Palette_Datastructs.struct FT_Parameter { FT_ULong tag; FT_Pointer data; }An array ofFT_Parameterstructs.struct FT_Prop_GlyphToScriptMap {FT_Faceface; FT_UShort * map; }An array ofFT_Prop_GlyphToScriptMapstructs.struct FT_Prop_IncreaseXHeight {FT_Faceface; FT_UInt limit; }An array ofFT_Prop_IncreaseXHeightstructs.Callback function:FT_Raster_DoneFuncCallback function:FT_Raster_DoneFuncstruct FT_Raster_Funcs { FT_Glyph_Format glyph_format;FT_Raster_NewFuncraster_new;FT_Raster_ResetFuncraster_reset;FT_Raster_SetModeFuncraster_set_mode;FT_Raster_RenderFuncraster_render;FT_Raster_DoneFuncraster_done; }An array ofFT_Raster_Funcsstructs.Callback function:FT_Raster_NewFuncCallback function:FT_Raster_NewFuncstruct FT_Raster_Params {FT_Bitmapconst * target; void const * source; int flags;FT_SpanFuncgray_spans;FT_SpanFuncblack_spans; FT_Raster_BitTest_Func bit_test; FT_Raster_BitTest_Func bit_set; void * user;FT_BBoxclip_box; }An array ofFT_Raster_Paramsstructs.Callback function:FT_Raster_RenderFuncCallback function:FT_Raster_RenderFuncCallback function:FT_Raster_ResetFuncCallback function:FT_Raster_ResetFuncCallback function:FT_Raster_SetModeFuncCallback function:FT_Raster_SetModeFuncCallback function:FT_Realloc_FuncCallback function:FT_Realloc_Funcstruct FT_SfntLangTag { FT_Byte * string; FT_UInt string_len; }An array ofFT_SfntLangTagstructs.struct FT_SfntName { FT_UShort platform_id; FT_UShort encoding_id; FT_UShort language_id; FT_UShort name_id; FT_Byte * string; FT_UInt string_len; }An array ofFT_SfntNamestructs.struct FT_SizeRec {FT_Faceface;FT_Genericgeneric;FT_Size_Metricsmetrics;FT_Size_Internal* internal; }struct FT_Size_Internal { void * module_data; FT_Render_Mode autohint_mode;FT_Size_Metricsautohint_metrics; }An array ofFT_Size_Internalstructs.struct FT_Size_Metrics { FT_UShort x_ppem; FT_UShort y_ppem; FT_Fixed x_scale; FT_Fixed y_scale; FT_Pos ascender; FT_Pos descender; FT_Pos height; FT_Pos max_advance; }An array ofFT_Size_Metricsstructs.struct FT_Size_RequestRec { FT_Size_Request_Type type; FT_Long width; FT_Long height; FT_UInt horiResolution; FT_UInt vertResolution; }An array ofFT_Size_Requeststructs.An array ofFT_Sizestructs.struct FT_Span { short x; unsigned short len; unsigned char coverage; }An array ofFT_Spanstructs.Callback function:FT_SpanFuncCallback function:FT_SpanFuncstruct FT_StreamRec { unsigned char * base; unsigned long size; unsigned long pos;FT_StreamDescdescriptor;FT_StreamDescpathname;FT_Stream_IoFuncread;FT_Stream_CloseFuncclose; FT_Memory memory; unsigned char * cursor; unsigned char * limit; }Callback function:FT_Stream_CloseFuncCallback function:FT_Stream_CloseFuncCallback function:FT_Stream_IoFuncCallback function:FT_Stream_IoFuncAn array ofFT_Streamstructs.union FT_StreamDesc { long value; void * pointer; }An array ofFT_StreamDescstructs.struct FT_SVG_DocumentRec { FT_Byte * svg_document; FT_ULong svg_document_length;FT_Size_Metricsmetrics; FT_UShort units_per_EM; FT_UShort start_glyph_id; FT_UShort end_glyph_id;FT_Matrixtransform;FT_Vectordelta; }An array ofFT_SVG_Documentstructs.struct FT_SvgGlyphRec {FT_GlyphRecroot; FT_Byte * svg_document; FT_ULong svg_document_length; FT_UInt glyph_index;FT_Size_Metricsmetrics; FT_UShort units_per_EM; FT_UShort start_glyph_id; FT_UShort end_glyph_id;FT_Matrixtransform;FT_Vectordelta; }An array ofFT_SvgGlyphstructs.struct FT_UnitVector { FT_F2Dot14 x; FT_F2Dot14 y; }An array ofFT_UnitVectorstructs.struct FT_Var_Axis { FT_String * name; FT_Fixed minimum; FT_Fixed def; FT_Fixed maximum; FT_ULong tag; FT_UInt strid; }An array ofFT_Var_Axisstructs.struct FT_Var_Named_Style { FT_Fixed * coords; FT_UInt strid; FT_UInt psid; }An array ofFT_Var_Named_Stylestructs.struct FT_Vector { FT_Pos x; FT_Pos y; }An array ofFT_Vectorstructs.Callback function:FTC_Face_RequesterCallback function:FTC_Face_Requesterstruct FTC_ImageTypeRec { FTC_FaceID face_id; FT_UInt width; FT_UInt height; FT_Int32 flags; }An array ofFTC_ImageTypestructs.struct FTC_SBitRec { FT_Byte width; FT_Byte height; FT_Char left; FT_Char top; FT_Byte format; FT_Byte max_grays; FT_Short pitch; FT_Char xadvance; FT_Char yadvance; FT_Byte * buffer; }An array ofFTC_SBitstructs.struct FTC_ScalerRec { FTC_FaceID face_id; FT_UInt width; FT_UInt height; FT_Int pixel; FT_UInt x_res; FT_UInt y_res; }An array ofFTC_Scalerstructs.struct PS_FontInfoRec { FT_String * version; FT_String * notice; FT_String * full_name; FT_String * family_name; FT_String * weight; FT_Long italic_angle; FT_Bool is_fixed_pitch; FT_Short underline_position; FT_UShort underline_thickness; }An array ofPS_FontInfostructs.struct PS_PrivateRec { FT_Int unique_id; FT_Int lenIV; FT_Byte num_blue_values; FT_Byte num_other_blues; FT_Byte num_family_blues; FT_Byte num_family_other_blues; FT_Short blue_values[14]; FT_Short other_blues[10]; FT_Short family_blues[14]; FT_Short family_other_blues[10]; FT_Fixed blue_scale; FT_Int blue_shift; FT_Int blue_fuzz; FT_UShort standard_width[1]; FT_UShort standard_height[1]; FT_Byte num_snap_widths; FT_Byte num_snap_heights; FT_Bool force_bold; FT_Bool round_stem_up; FT_Short snap_widths[13]; FT_Short snap_heights[13]; FT_Fixed expansion_factor; FT_Long language_group; FT_Long password; FT_Short min_feature[2]; }An array ofPS_Privatestructs.Callback function:SVG_Lib_Free_FuncCallback function:SVG_Lib_Free_FuncCallback function:SVG_Lib_Init_FuncCallback function:SVG_Lib_Init_FuncCallback function:SVG_Lib_Preset_Slot_FuncCallback function:SVG_Lib_Preset_Slot_FuncCallback function:SVG_Lib_Render_FuncCallback function:SVG_Lib_Render_Funcstruct SVG_RendererHooks {SVG_Lib_Init_Funcinit_svg;SVG_Lib_Free_Funcfree_svg;SVG_Lib_Render_Funcrender_svg;SVG_Lib_Preset_Slot_Funcpreset_slot; }An array ofSVG_RendererHooksstructs.struct TT_Header { FT_Fixed Table_Version; FT_Fixed Font_Revision; FT_Long CheckSum_Adjust; FT_Long Magic_Number; FT_UShort Flags; FT_UShort Units_Per_EM; FT_ULong Created[2]; FT_ULong Modified[2]; FT_Short xMin; FT_Short yMin; FT_Short xMax; FT_Short yMax; FT_UShort Mac_Style; FT_UShort Lowest_Rec_PPEM; FT_Short Font_Direction; FT_Short Index_To_Loc_Format; FT_Short Glyph_Data_Format; }An array ofTT_Headerstructs.struct TT_HoriHeader { FT_Fixed Version; FT_Short Ascender; FT_Short Descender; FT_Short Line_Gap; FT_UShort advance_Width_Max; FT_Short min_Left_Side_Bearing; FT_Short min_Right_Side_Bearing; FT_Short xMax_Extent; FT_Short caret_Slope_Rise; FT_Short caret_Slope_Run; FT_Short caret_Offset; FT_Short Reserved[4]; FT_Short metric_Data_Format; FT_UShort number_Of_HMetrics; void * long_metrics; void * short_metrics; }An array ofTT_HoriHeaderstructs.struct TT_MaxProfile { FT_Fixed version; FT_UShort numGlyphs; FT_UShort maxPoints; FT_UShort maxContours; FT_UShort maxCompositePoints; FT_UShort maxCompositeContours; FT_UShort maxZones; FT_UShort maxTwilightPoints; FT_UShort maxStorage; FT_UShort maxFunctionDefs; FT_UShort maxInstructionDefs; FT_UShort maxStackElements; FT_UShort maxSizeOfInstructions; FT_UShort maxComponentElements; FT_UShort maxComponentDepth; }An array ofTT_MaxProfilestructs.struct TT_OS2 { FT_UShort version; FT_Short xAvgCharWidth; FT_UShort usWeightClass; FT_UShort usWidthClass; FT_UShort fsType; FT_Short ySubscriptXSize; FT_Short ySubscriptYSize; FT_Short ySubscriptXOffset; FT_Short ySubscriptYOffset; FT_Short ySuperscriptXSize; FT_Short ySuperscriptYSize; FT_Short ySuperscriptXOffset; FT_Short ySuperscriptYOffset; FT_Short yStrikeoutSize; FT_Short yStrikeoutPosition; FT_Short sFamilyClass; FT_Byte panose[10]; FT_ULong ulUnicodeRange1; FT_ULong ulUnicodeRange2; FT_ULong ulUnicodeRange3; FT_ULong ulUnicodeRange4; FT_Char achVendID[4]; FT_UShort fsSelection; FT_UShort usFirstCharIndex; FT_UShort usLastCharIndex; FT_Short sTypoAscender; FT_Short sTypoDescender; FT_Short sTypoLineGap; FT_UShort usWinAscent; FT_UShort usWinDescent; FT_ULong ulCodePageRange1; FT_ULong ulCodePageRange2; FT_Short sxHeight; FT_Short sCapHeight; FT_UShort usDefaultChar; FT_UShort usBreakChar; FT_UShort usMaxContext; FT_UShort usLowerOpticalPointSize; FT_UShort usUpperOpticalPointSize; }An array ofTT_OS2structs.struct TT_PCLT { FT_Fixed Version; FT_ULong FontNumber; FT_UShort Pitch; FT_UShort xHeight; FT_UShort Style; FT_UShort TypeFamily; FT_UShort CapHeight; FT_UShort SymbolSet; FT_Char TypeFace[16]; FT_Char CharacterComplement[8]; FT_Char FileName[6]; FT_Char StrokeWeight; FT_Char WidthType; FT_Byte SerifStyle; FT_Byte Reserved; }An array ofTT_PCLTstructs.struct TT_Postscript { FT_Fixed FormatType; FT_Fixed italicAngle; FT_Short underlinePosition; FT_Short underlineThickness; FT_ULong isFixedPitch; FT_ULong minMemType42; FT_ULong maxMemType42; FT_ULong minMemType1; FT_ULong maxMemType1; }An array ofTT_Postscriptstructs.struct TT_VertHeader { FT_Fixed Version; FT_Short Ascender; FT_Short Descender; FT_Short Line_Gap; FT_UShort advance_Height_Max; FT_Short min_Top_Side_Bearing; FT_Short min_Bottom_Side_Bearing; FT_Short yMax_Extent; FT_Short caret_Slope_Rise; FT_Short caret_Slope_Run; FT_Short caret_Offset; FT_Short Reserved[4]; FT_Short metric_Data_Format; FT_UShort number_Of_VMetrics; void * long_metrics; void * short_metrics; }An array ofTT_VertHeaderstructs.