/// <summary> /// Get an enumeration of levels for each character. /// </summary> /// <returns></returns> public IEnumerable <byte> GetLevels() { var levels = NativeMethods.ubidi_getLevels(_biDi, out var errorCode); ExceptionFromErrorCode.ThrowIfError(errorCode, "BiDi level retrieval failed! " + errorCode); var ret = new byte[ProcessedLength]; Marshal.Copy(levels, ret, 0, ret.Length); return(ret); }