unsafe CGContextPDF(NSUrl url, CGRect *mediaBox, CGPDFInfo info) { if (url == null) { throw new ArgumentNullException("url"); } using (var dict = info == null ? null : info.ToDictionary()) Handle = CGPDFContextCreateWithURL(url.Handle, mediaBox, dict == null ? IntPtr.Zero : dict.Handle); }
static void Add(NSMutableDictionary dict, IntPtr key, CGRect?val) { if (!val.HasValue) { return; } NSData data; unsafe { CGRect f = val.Value; CGRect *pf = &f; data = NSData.FromBytes((IntPtr)pf, 16); } dict.LowlevelSetObject(data, key); }
unsafe extern static void RectFillList(CGRect *rects, nint count);
unsafe CGContextPDF(NSUrl url, CGRect *mediaBox, CGPDFInfo info) { using (var dict = info == null ? null : info.ToDictionary()) Handle = CGPDFContextCreateWithURL(url.GetHandle(), mediaBox, dict.GetHandle()); }
unsafe CGContextPDF(CGDataConsumer dataConsumer, CGRect *mediaBox, CGPDFInfo info) { using (var dict = info == null ? null : info.ToDictionary()) Handle = CGPDFContextCreate(dataConsumer.GetHandle(), mediaBox, dict.GetHandle()); }
unsafe extern static /* CGContextRef */ IntPtr CGPDFContextCreate(/* CGDataConsumerRef */ IntPtr consumer, CGRect *mediaBox, /* CFDictionaryRef */ IntPtr auxiliaryInfo);
unsafe extern static /* CGContextRef */ IntPtr CGPDFContextCreateWithURL(/* CFURLRef */ IntPtr url, CGRect *mediaBox, /* CFDictionaryRef */ IntPtr auxiliaryInfo);
unsafe extern static void CGContextBeginPage(/* CGContextRef __nullable */ IntPtr c, /* const CGRect * __nullable */ CGRect *mediaBox);
unsafe CGContextPDF(NSUrl?url, CGRect *mediaBox, CGPDFInfo?info) : base(Create(url, mediaBox, info), true) { }
unsafe static IntPtr Create(NSUrl?url, CGRect *mediaBox, CGPDFInfo?info) { using (var dict = info?.ToDictionary()) return(CGPDFContextCreateWithURL(url.GetHandle(), mediaBox, dict.GetHandle())); }
unsafe CGContextPDF(CGDataConsumer?dataConsumer, CGRect *mediaBox, CGPDFInfo?info) : base(Create(dataConsumer, mediaBox, info), true) { }
unsafe static IntPtr Create(CGDataConsumer?dataConsumer, CGRect *mediaBox, CGPDFInfo?info) { using (var dict = info?.ToDictionary()) return(CGPDFContextCreate(dataConsumer.GetHandle(), mediaBox, dict.GetHandle())); }