public int[] ReadAllOffsets(BinaryReaderFont reader) { if (count == 0) { return(new int[0]); } switch (offSize) { case 1: return(Array.ConvertAll( reader.ReadBytes(count + 1), new Converter <byte, int>((a) => { return a; }) )); case 2: return(Array.ConvertAll( reader.ReadUInt16Array(count + 1), new Converter <ushort, int>((a) => { return a; }) )); case 3: return(reader.ReadUInt24Array(count + 1)); case 4: return(reader.ReadInt32Array(count + 1)); } return(new int[0]); }