Example #1
0
        public Bitmap Render()
        {
            var      txt   = GetInFixNotation();
            var      size  = DrawingHelpers.GetSizeOfText(txt, DrawingHelpers.globalFont);
            Bitmap   bmp   = new Bitmap((int)size.Width, (int)size.Height);
            Graphics g     = Graphics.FromImage(bmp);
            var      brush = new SolidBrush(DrawingHelpers.globalColor);

            g.DrawString(txt, DrawingHelpers.globalFont, brush, new PointF(0, 0));
            brush.Dispose();
            g.Dispose();
            return(bmp);
        }
Example #2
0
        public Bitmap Render()
        {
            var parameterLeftBmp  = this.FirstParameter.Render();
            var parameterRightBmp = this.SecondParameter.Render();

            var sizeFunctionStart  = DrawingHelpers.GetSizeOfText("log(", DrawingHelpers.globalFont);
            var sizeFunctionMiddle = DrawingHelpers.GetSizeOfText(", ", DrawingHelpers.globalFont);
            var sizeFunctionEnd    = DrawingHelpers.GetSizeOfText(")", DrawingHelpers.globalFont);

            var brush = new SolidBrush(DrawingHelpers.globalColor);

            var bmp = new Bitmap(
                (int)sizeFunctionStart.Width + parameterLeftBmp.Width + (int)sizeFunctionMiddle.Width + parameterRightBmp.Width + (int)sizeFunctionEnd.Width,
                Math.Max(parameterRightBmp.Height,
                         Math.Max((int)sizeFunctionStart.Height, parameterLeftBmp.Height)));

            Graphics g = Graphics.FromImage(bmp);

            g.DrawString("log(", DrawingHelpers.globalFont, brush, new PointF(0, bmp.Height - (int)sizeFunctionStart.Height));
            g.DrawImage(parameterLeftBmp, new Point((int)sizeFunctionStart.Width + DrawingHelpers.Padding, bmp.Height - parameterLeftBmp.Height));
            g.DrawString(", ",
                         DrawingHelpers.globalFont,
                         brush,
                         new PointF((int)sizeFunctionStart.Width + DrawingHelpers.Padding + parameterLeftBmp.Width,
                                    bmp.Height - (int)sizeFunctionMiddle.Height));
            g.DrawImage(parameterRightBmp,
                        new Point((int)sizeFunctionStart.Width + DrawingHelpers.Padding + (int)sizeFunctionMiddle.Width, bmp.Height - parameterRightBmp.Height));
            g.DrawString(")",
                         DrawingHelpers.globalFont,
                         brush,
                         new PointF((int)sizeFunctionStart.Width + 2 * DrawingHelpers.Padding + parameterRightBmp.Width + parameterLeftBmp.Width + (int)sizeFunctionMiddle.Width,
                                    bmp.Height - (int)sizeFunctionEnd.Height));
            g.Dispose();
            parameterLeftBmp.Dispose();
            parameterRightBmp.Dispose();
            brush.Dispose();
            return(bmp);
        }