public INDEXData(uint offset_buf, MBOBuffer bufTable) { m_offset = offset_buf; m_bufTable = bufTable; count = m_bufTable.GetUshort(m_offset); size = 2; if (count > 0) { offSize = m_bufTable.GetByte(m_offset + 2); lastOffset = GetOffset(count); size += (uint)offSize * ((uint)count + 1) + lastOffset; } }
public SubHeader(uint offsetSubheader, MBOBuffer bufTable) { firstCode = bufTable.GetUshort(offsetSubheader); entryCount = bufTable.GetUshort(offsetSubheader + 2); idDelta = bufTable.GetShort (offsetSubheader + 4); idRangeOffset = bufTable.GetUshort(offsetSubheader + 6); m_offsetSubHeader = offsetSubheader; }
// Offset is absolute within MBOBuffer public void Populate( MBOBuffer b, uint offset ) { unicodeValue = b.GetUint24( offset ); glyphID = b.GetUshort( offset + 3 ); }
public INDEXData(uint offset_buf, MBOBuffer bufTable) { m_offset = offset_buf; m_bufTable = bufTable; count = m_bufTable.GetUshort(m_offset); size = 2; if ( count > 0 ) { offSize = m_bufTable.GetByte(m_offset + 2 ); lastOffset = GetOffset( count ); size += (uint) offSize * ( (uint) count + 1 ) + lastOffset; } }