实现原理:

Stamper将原图当作画布,把水印图或者文字画入原图中。生成bitmap。

Stamper使用方法:

1.添加依赖

Step 1. Add the JitPack repository to your build file; Add it in your root build.gradle at the end of repositories:allprojects {        repositories {        ...        maven { url 'https://jitpack.io' }        }        }Step 2. Add the dependencydependencies {         implementation 'com.github.KernHu:Stamper:1.1'}

2.代码部分:

1.use it stamp a text;

Bitmap bitmap3 = BitmapFactory.decodeResource(getResources(), R.drawable.sample_plot_3);Stamper.with(MainActivity.this)      .setLabel("National Geography")      .setLabelColor(getResources().getColor(R.color.theme))//Color.rgb(255, 60, 70)      .setLabelSize(60)      .setMasterBitmap(bitmap3)      .setStampType(StampType.TEXT)      .setStampPadding(new StampPadding(bitmap3.getWidth() / 4, bitmap3.getHeight() / 6))      .setStampWatcher(mStampWatcher)      .setRequestId(1001)      .build();

2.use it stamp a image;

Bitmap bitmap4 = BitmapFactory.decodeResource(getResources(), R.drawable.sample_plot_4);Bitmap watermark = BitmapFactory.decodeResource(getResources(), R.drawable.ic_watermark);Stamper.with(MainActivity.this)      .setMasterBitmap(bitmap4)      .setWatermark(watermark)      .setStampType(StampType.IMAGE)      .setStampPadding(new StampPadding(bitmap4.getWidth() - watermark.getWidth() - 40, 40))      .setStampWatcher(mStampWatcher)      .setRequestId(1002)      .build();

3.the callback

StampWatcher mStampWatcher = new StampWatcher() {        @Override        protected void onSuccess(Bitmap bitmap, int requestId) {            super.onSuccess(bitmap, requestId);            switch (requestId) {                 case 1001:                    //the result of text stamper                     break;                case 1002:                    //the result of image stamper                     break;            }        }         @Override        protected void onError(String error, int requestId) {            super.onError(error, requestId);             switch (requestId) {                 case 1001://                     break;                case 1002://                     break;            }        }    }; 

更多相关文章

  1. 随笔10
  2. Android(安卓)Bitmap 缩放 旋转 水印 裁剪操作
  3. Android(安卓)图片加水印
  4. android 中的 Bitmap 相关
  5. Android之glide加载图片圆角效果
  6. android自定义组件
  7. android 给图片加水印
  8. Android清空画布
  9. Android(安卓)中如何自己通过代码绘图

随机推荐

  1. android教程资源 免费android深入浅出课
  2. android小游戏 猜拳游戏设计
  3. Android(安卓)汉字转拼音
  4. android Alertdialog.Bulider简单使用
  5. Android(安卓)在 xml中定义图片
  6. Android(安卓)Webkit 解读 WebKit – Web
  7. android 实现静默安装、卸载
  8. linux eclipse中运行android AVD 错误
  9. Android(安卓)3.0 r1 API中文文档(108)
  10. android简单的乘法运算