上传图片加水印(转载)

主要原因就是上传的图片原类型是GIF型就不行,所以要先转位图,将原图像画到位图上,再保存位图

 

        /// <summary>
        /// 给图片加水印
        /// </summary>
        /// <param name="strPath">原始文件</param>
        /// <param name="strPathSyp">水印文件</param>
        /// <param name="strPathSypf">加水印后的结果文件</param>

        public static void AddWaterPic(string strPath, string strPathSyp, string strPathSypf)
        {
            System.Drawing.Image image = System.Drawing.Image.FromFile(strPath);
            Bitmap bm = new Bitmap(image);
           
            System.Drawing.Image copyImage = System.Drawing.Image.FromFile(strPathSyp);

            System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bm);

//如果要使水印居中显示,只要更改bm.Width - copyImage.Width, bm.Height - copyImage.Height,这两个值

//就可以了,在实际项目中,我用的是Convert.ToInt32(image.Width * 0.3), Convert.ToInt32(image.Height * 0.3)

            g.DrawImage(copyImage, new System.Drawing.Rectangle(bm.Width - copyImage.Width, bm.Height - copyImage.Height, copyImage.Width, copyImage.Height), 0, 0, copyImage.Width, copyImage.Height, System.Drawing.GraphicsUnit.Pixel);
            g.Dispose();
            copyImage.Dispose();
            bm.Save(strPathSypf);
            bm.Dispose();
        }

转自:http://kb.cnblogs.com/a/1311057/

转载于:https://www.cnblogs.com/johnwonder/archive/2010/10/11/1847979.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值