Example #1
0
        public static UIImage ToImage(this Octicon @this, nfloat size, bool cache = true)
        {
            var cacheDir = NSFileManager.DefaultManager.GetUrls(NSSearchPathDirectory.CachesDirectory, NSSearchPathDomain.User)[0].Path;

            string extension = string.Empty;

            if (Scale > 1 && Scale < 3)
            {
                extension = "@2x";
            }
            else if (Scale >= 3)
            {
                extension = "@3x";
            }

            var fileName     = string.Format("octicon-{0}-{1}{2}.png", (int)@this.CharacterCode, size, extension);
            var combinedPath = Path.Combine(cacheDir, fileName);

            if (File.Exists(combinedPath))
            {
                var img = cache ? UIImage.FromBundle(combinedPath) : UIImage.FromFile(combinedPath);
                return(img.ImageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate));
            }
            else
            {
                var img = Graphics.ImageFromFont(UIFont.FromName("octicons", size), @this.CharacterCode, UIColor.Black);
                if (img == null)
                {
                    return(null);
                }
                var pngData = img.AsPNG();
                pngData.Save(combinedPath, false);
                return(img.ImageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate));
            }
        }
Example #2
0
 public static UIImage ToEmptyListImage(this Octicon @this)
 {
     return(@this.ToImage(64f, false));
 }
Example #3
0
//
//        private static UIColor[] colors = {
//            UIColor.FromRGB(26, 188, 156),
//            UIColor.FromRGB(46, 204, 113),
//            UIColor.FromRGB(52, 152, 219),
//            UIColor.FromRGB(155, 89, 182),
//            UIColor.FromRGB(52, 73, 94),
//            UIColor.FromRGB(22, 160, 133),
//            UIColor.FromRGB(39, 174, 96),
//            UIColor.FromRGB(41, 128, 185),
//            UIColor.FromRGB(142, 68, 173),
//            UIColor.FromRGB(44, 62, 80),
//            UIColor.FromRGB(241, 196, 15),
//            UIColor.FromRGB(230, 126, 34),
//            UIColor.FromRGB(231, 76, 60),
//            UIColor.FromRGB(149, 165, 166),
//            UIColor.FromRGB(243, 156, 18),
//            UIColor.FromRGB(211, 84, 0),
//            UIColor.FromRGB(192, 57, 43),
//            UIColor.FromRGB(127, 140, 141),
//        };
//
//        public static UIImage ToImageWithBackground(this Octicon @this)
//        {
//            UIColor bgColor = colors[(int)@this.CharacterCode % colors.Length];
//            return Graphics.ImageFromFontWithBackground(UIFont.FromName("octicons", 24f), @this.CharacterCode, UIColor.White, bgColor);
//        }
//
        public static UIImage ToImage(this Octicon @this, bool cache = true)
        {
            return(@this.ToImage(24f, cache));
        }
Example #4
0
 public static UIImage ToImage(this Octicon @this, nfloat size)
 {
     return(Graphics.ImageFromFont(UIFont.FromName("octicons", size), @this.CharacterCode, UIColor.Black)
            .ImageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate));
 }