• 李锦玉   2014/11/22 10:47:00
  • Android中如何实现给图片添加水印的功能?
  • 关键字: 添加水印 图片水印 上传图片
  • 最近做了一个图片添加水印的功能:传入的参数为:原图的bitmap,水印的字符串,以及context。原图的bitmap可以先取得图片的文件输入流fis,之后通过 Bitmap bm = BitmapFactory.decodeStream(fis, null, opt); 方法来取得。

    添加水印的方法如下:

    1. public Bitmap addWaterMark(Bitmap src, String water, Context context){  
    2.         Bitmap tarBitmap = src.copy(Config.ARGB_8888, true);  
    3.         int w = tarBitmap.getWidth();  
    4.         int h = tarBitmap.getHeight();  
    5.         Canvas canvas = new Canvas(tarBitmap);  
    6.         //启用抗锯齿和使用设备的文本字距   
    7.         Paint textPaint = new Paint(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG);  
    8.         //字体的相关设置  
    9.         textPaint.setTextSize(100.0f);//字体大小   
    10.         textPaint.setTypeface(Typeface.DEFAULT_BOLD);  
    11.         textPaint.setColor(Color.YELLOW);  
    12.         textPaint.setShadowLayer(3f, 11,context.getResources().getColor(android.R.color.background_dark));  
    13.         //图片上添加水印的位置,这里设置的是中下部3/4处  
    14.         canvas.drawText(water, w/2-50, (float) (h*0.75), textPaint);  
    15.         canvas.save(Canvas.ALL_SAVE_FLAG);   
    16.         canvas.restore();    
    17.         return tarBitmap;         
    18.     }  

大家的回答
  • 还没有人回答这个问题哦,亲,快来帮帮TA吧
  •   我来回答
  • 注册用户登录后才能发表评论,请 登录注册
  • 请您注意

    ·自觉遵守:爱国、守法、自律、真实、文明的原则

    ·尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法规

    ·严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的作品

    ·承担一切因您的行为而直接或间接导致的民事或刑事法律责任

    ·您在编程中国社区新闻评论发表的作品,本网站有权在网站内保留、转载、引用或者删除

    ·参与本评论即表明您已经阅读并接受上述条款

  • 相关话题
  • 暂无相关话题哦