为图片添加水印

利用.net中System.Drawing命名空间下的常用类我们就可以轻松的为图片添加文字水印和图片水印,并且可以自定义水印文字和水印图片的大小、位置、颜色、透明度等等!对于jpg或者png等图片,可以直接通过Graphics g= Graphics.FromImage(image)来获得Graphics对象,但对于gif图片,通过这种方法无法获得Graphics对象,解决这个问题的方法是首先根据.gif文件的大小生成一个位图作图区,然后将原图复制到作图区,做进行处理,以下是水印添加类的完整代码:

using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Drawing.Drawing2D;

namespace JillZhang
{
    
public enum MarkType
    
{
        Text,Image
    }

    
/// <summary>
    
/// 给图片添加水印得类得描述
    
/// </summary>

    public class WaterMark
    
{
        
---------------------成员变量---------------------

        
---------------------构造函数---------------------

        
---------------------公共属性---------------------

        
---------------------方法事件---------------------        
    }

}


利用该类,您可以轻松的对图片加水印,但也有不足,通过这种方法添加水印,会破坏.gif动画,因为我目前还不知道如何判断.gif文件是否是动画,这个问题还需要各位网友的建议和帮助
作者:jillzhang
出处:http://jillzhang.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
posted @ 2005-12-20 08:58 Robin Zhang 阅读(4159) 评论(12)  编辑 收藏 网摘 所属分类: asp.net

  回复  引用    
#1楼2005-12-20 10:54 | Uming[未注册用户]
很好。
  回复  引用  查看    
#3楼2005-12-20 11:02 | hyde      
能不能获取Gif的帧数,如果能就能判断是否动画~!我没有试过~异想天开一下
  回复  引用  查看    
#4楼2005-12-20 11:22 | 垃圾猪      
收藏,谢谢
  回复  引用  查看    
#5楼2005-12-21 10:46 | sPhinX      
判断指定图像是否包含基于时间的帧,可以使用.NET提供的ImageAnimator 类。
  回复  引用    
#6楼2006-10-03 23:09 | superstone[未注册用户]
不知你的程序能不能处理带有透明色的GIF,好象不行,我现在的不行,提示“不能创建带有索引的GIF图象”什么的错误,没有透明色的GIF是可以的,要使用透明色的话只有PNG可以,但体积是JPG和GIF的10倍左右,不知道你有没有注意过或有什么更好的解决方法,谢谢啦。
  回复  引用    
#7楼2006-11-11 13:19 | welland[未注册用户]
怎么调用这个类?不好意思,我是新手;
  回复  引用    
#8楼2007-02-26 14:53 | JN[未注册用户]
transparence水印透明色设置无效
  回复  引用  查看    
#9楼2007-10-15 16:43 | qq13237810775      
引用



发表评论

昵称: [登录] [注册]

主页:

邮箱:(仅博主可见)

评论内容:

  登录  注册

[使用Ctrl+Enter键快速提交评论]

0 300593




相关文章:

相关链接: