public NSData GetFontTableData(CTFontTable table, CTFontTableOptions options)
        {
            IntPtr cfDataRef = CTFontCopyTable(handle, table, options);

            if (cfDataRef == IntPtr.Zero)
            {
                return(null);
            }
            var d = new NSData(cfDataRef);

            d.Release();
            return(d);
        }
예제 #2
0
        public CTFontTable[] GetAvailableTables(CTFontTableOptions options)
        {
            var cfArrayRef = CTFontCopyAvailableTables(handle, options);

            if (cfArrayRef == IntPtr.Zero)
            {
                return(new CTFontTable [0]);
            }
            var tables = NSArray.ArrayFromHandle(cfArrayRef, v => {
                return((CTFontTable)(uint)v);
            });

            CFObject.CFRelease(cfArrayRef);
            return(tables);
        }
 static extern IntPtr CTFontCopyTable(IntPtr font, CTFontTable table, CTFontTableOptions options);
 static extern IntPtr CTFontCopyAvailableTables(IntPtr font, CTFontTableOptions options);