Example #1
0
        public static System.Drawing.Image CreateWatermark(this System.Drawing.Image originalImg, string text, HorizontalAlign align, VerticalAlign valign)
        {
            int  x    = 0;
            int  y    = 0;
            Font font = new Font("Arial", 10f);
            int  num3 = originalImg.Width - ((int)(font.SizeInPoints * text.Length));
            int  num4 = originalImg.Height - ((int)(font.SizeInPoints * 2f));

            switch (align)
            {
            case HorizontalAlign.Left:
                x = 5;
                break;

            case HorizontalAlign.Center:
                x = ((num3 / 2) <= 5) ? 5 : (num3 / 2);
                break;

            case HorizontalAlign.Right:
                x = (num3 <= 10) ? 5 : (num3 - 5);
                break;

            default:
                x = 5;
                break;
            }
            switch (valign)
            {
            case VerticalAlign.Top:
                y = 5;
                break;

            case VerticalAlign.Middle:
                y = ((num4 / 2) <= 5) ? 5 : (num4 / 2);
                break;

            case VerticalAlign.Bottom:
                y = (num4 <= 10) ? 5 : (num4 - 5);
                break;

            default:
                y = 5;
                break;
            }
            font.Dispose();
            return(originalImg.CreateWatermark(text, x, y));
        }
Example #2
0
        public static System.Drawing.Image CreateWatermark(this System.Drawing.Image originalImg, System.Drawing.Image watermarkImg, HorizontalAlign align, VerticalAlign valign)
        {
            int x    = 0;
            int y    = 0;
            int num3 = originalImg.Width - watermarkImg.Width;
            int num4 = originalImg.Height - watermarkImg.Height;

            switch (align)
            {
            case HorizontalAlign.Left:
                x = 5;
                break;

            case HorizontalAlign.Center:
                x = ((num3 / 2) <= 5) ? 5 : (num3 / 2);
                break;

            case HorizontalAlign.Right:
                x = (num3 <= 10) ? 5 : (num3 - 5);
                break;

            default:
                x = 5;
                break;
            }
            switch (valign)
            {
            case VerticalAlign.Top:
                y = 5;
                break;

            case VerticalAlign.Middle:
                y = ((num4 / 2) <= 5) ? 5 : (num4 / 2);
                break;

            case VerticalAlign.Bottom:
                y = (num4 <= 10) ? 5 : (num4 - 5);
                break;

            default:
                y = 5;
                break;
            }
            return(originalImg.CreateWatermark(watermarkImg, x, y));
        }