public static KernSubtable read(final DataInput di) throws IOException { KernSubtable table = null; /* final int version = */ di.readUnsignedShort(); /* final int length = */ di.readUnsignedShort(); final int coverage = di.readUnsignedShort(); final int format = coverage >> 8; switch (format) { case 0: table = new KernSubtableFormat0(di); break; case 2: table = new KernSubtableFormat2(di); break; default: break; } return table; }
public static KernSubtable read(final DataInput di) throws IOException { KernSubtable table = null; /* final int version = */ di.readUnsignedShort(); /* final int length = */ di.readUnsignedShort(); final int coverage = di.readUnsignedShort(); final int format = coverage >> 8; switch (format) { case 0: table = new KernSubtableFormat0(di); break; case 2: table = new KernSubtableFormat2(di); break; default: break; } return table; }