예제 #1
0
 public CGImage?CreateImage(int index, CGImageOptions options)
 {
     using (var dict = options?.ToDictionary()) {
         var ret = CGImageSourceCreateImageAtIndex(Handle, index, dict.GetHandle());
         return(ret == IntPtr.Zero ? null : new CGImage(ret, true));
     }
 }
예제 #2
0
 public CGImage CreateImage(int index, CGImageOptions options)
 {
     using (var dict = options == null ? null : options.ToDictionary()) {
         var ret = CGImageSourceCreateImageAtIndex(handle, index, dict == null ? IntPtr.Zero : dict.Handle);
         return(ret == IntPtr.Zero ? null : new CGImage(ret, true));
     }
 }
예제 #3
0
 public NSDictionary CopyProperties(CGImageOptions options, int imageIndex)
 {
     if (options == null)
     {
         throw new ArgumentNullException("options");
     }
     return(CopyProperties(options.ToDictionary(), imageIndex));
 }
예제 #4
0
 public NSDictionary?CopyProperties(CGImageOptions options, int imageIndex)
 {
     if (options is null)
     {
         throw new ArgumentNullException(nameof(options));
     }
     using var dict = options.ToDictionary();
     return(CopyProperties(dict, imageIndex));
 }
예제 #5
0
        public static CGImageSource FromData(NSData data, CGImageOptions options)
        {
            if (data == null)
            {
                throw new ArgumentNullException("data");
            }

            using (var dict = options == null ? null : options.ToDictionary()) {
                var result = CGImageSourceCreateWithData(data.Handle, dict == null ? IntPtr.Zero : dict.Handle);
                return(result == IntPtr.Zero ? null : new CGImageSource(result, true));
            }
        }
예제 #6
0
        public static CGImageSource FromDataProvider(CGDataProvider provider, CGImageOptions options)
        {
            if (provider == null)
            {
                throw new ArgumentNullException("provider");
            }

            using (var dict = options == null ? null : options.ToDictionary()) {
                var result = CGImageSourceCreateWithDataProvider(provider.Handle, dict == null ? IntPtr.Zero : dict.Handle);
                return(result == IntPtr.Zero ? null : new CGImageSource(result, true));
            }
        }
예제 #7
0
        public static CGImageSource FromUrl(NSUrl url, CGImageOptions options)
        {
            if (url == null)
            {
                throw new ArgumentNullException("url");
            }

            using (var dict = options == null ? null : options.ToDictionary()) {
                var result = CGImageSourceCreateWithURL(url.Handle, dict == null ? IntPtr.Zero : dict.Handle);
                return(result == IntPtr.Zero ? null : new CGImageSource(result, true));
            }
        }
예제 #8
0
        public CGImageMetadata CopyMetadata(nint index, CGImageOptions options)
        {
            NSDictionary o = null;

            if (options != null)
            {
                o = options.ToDictionary();
            }
            var result = CopyMetadata(index, o);

            if (options != null)
            {
                o.Dispose();
            }
            return(result);
        }
예제 #9
0
 public static CGImageSource CreateIncremental(CGImageOptions options)
 {
     using (var dict = options == null ? null : options.ToDictionary())
         return(new CGImageSource(CGImageSourceCreateIncremental(dict == null ? IntPtr.Zero : dict.Handle), true));
 }
예제 #10
0
 public CoreGraphics.CGImageProperties GetProperties(int index, CGImageOptions options = null)
 {
     return(new CoreGraphics.CGImageProperties(CopyProperties(options == null ? null : options.ToDictionary(), index)));
 }