public static void ParseIcons(string HTML) { CQ cq = CQ.Create(HTML).Find(Selectors.GetIconContainer()); var cq2 = cq.Find(Selectors.GetIconSelector()); foreach (var iconData in cq2) { var element = iconData.FirstChild.FirstChild; var alt = element.Attributes["alt"]; var srcset = element.Attributes["srcset"].Split(' '); var src = srcset[srcset.Length - 2]; var finder = Heroes.Where(x => x.Name == alt); if (finder.Count > 0) { WebExtension[finder[0].Id].IconUrl = src; } Caching(src, $"./Source/Icons/{alt}.png"); Bitmap img = new Bitmap(new Bitmap($"./Source/Icons/{alt}.png"), new Size(60, 60)); Bitmap imgWithFrame = new Bitmap(img); using (Graphics g = Graphics.FromImage(imgWithFrame)) { g.DrawRectangle(new Pen(Brushes.Gold, 2), new Rectangle(0, 0, img.Width, img.Height)); } imgWithFrame.Save($"./Source/Icons/{alt}_h.png"); Image corner = OvalImage(img, Color.Transparent); Bitmap rez = new Bitmap(70, 70); using (Graphics g = Graphics.FromImage(rez)) { g.DrawImage(corner, new Rectangle(5, 5, 60, 60), new Rectangle(0, 0, 60, 60), GraphicsUnit.Pixel); } rez.Save($"./Source/Icons/{alt}_corner.png"); using (Graphics g = Graphics.FromImage(rez)) { var pen = new Pen(new SolidBrush(Color.Gold), 1); for (int i = 0; i < 10; i++) { pen.Color = Color.FromArgb((int)(20 + i * 2), Color.Gold.R, Color.Gold.G, Color.Gold.B); pen.Width = 10 - i; g.DrawEllipse(pen, 5, 5, corner.Width, corner.Height); } } rez.Save($"./Source/Icons/{alt}_corner_h.png"); } }