public object GetSfntTable(SfntTag tag)
{
IntPtr tableRef = FT.FT_Get_Sfnt_Table(Reference, tag);
if (tableRef == IntPtr.Zero)
return null;
switch (tag)
{
case SfntTag.Header:
return new Header(tableRef);
case SfntTag.HorizontalHeader:
return new HoriHeader(tableRef);
case SfntTag.MaxProfile:
return new MaxProfile(tableRef);
case SfntTag.OS2:
return new OS2(tableRef);
case SfntTag.Pclt:
return new Pclt(tableRef);
case SfntTag.Postscript:
return new Postscript(tableRef);
case SfntTag.VertHeader:
return new VertHeader(tableRef);
default:
return null;
}
}
namespace SharpFont.TrueType
{
public enum SfntTag
{
Header = 0,
MaxProfile = 1,
OS2 = 2,
HorizontalHeader = 3,
VertHeader = 4,
Postscript = 5,
Pclt = 6
}
}