public static Bitmap Generate(string text, int size)
        {
            string text2  = InitialsImageGenerator.MakeInitials(text);
            Bitmap bitmap = new Bitmap(size, size);
            Color  color  = InitialsImageGenerator.CreateRandomColor(text);

            using (Font font = new Font("Segoe UI", (float)size / 3f, FontStyle.Regular, GraphicsUnit.Pixel))
            {
                using (Graphics graphics = Graphics.FromImage(bitmap))
                {
                    using (Brush brush = new SolidBrush(InitialsImageGenerator.ContrastColor(color)))
                    {
                        SizeF  sizeF = graphics.MeasureString(text2, font);
                        float  x     = (float)size / 2f - sizeF.Width / 2f;
                        float  y     = (float)size / 2f - sizeF.Height / 2f;
                        PointF point = new PointF(x, y);
                        graphics.Clear(color);
                        graphics.SmoothingMode     = SmoothingMode.AntiAlias;
                        graphics.TextRenderingHint = TextRenderingHint.AntiAlias;
                        graphics.DrawString(text2, font, brush, point);
                        graphics.Flush();
                    }
                }
            }
            return(bitmap);
        }
        public static Stream GenerateAsStream(string text, int size)
        {
            Stream result;

            using (Bitmap bitmap = InitialsImageGenerator.Generate(text, size))
            {
                MemoryStream memoryStream = new MemoryStream(65536);
                bitmap.Save(memoryStream, ImageFormat.Png);
                result = memoryStream;
            }
            return(result);
        }