Android手绘涂鸦PaintView

时间: 2023-08-02 admin IT培训

Android手绘涂鸦PaintView

Android手绘涂鸦PaintView

  推荐一款很好用的涂鸦自定义控件PaintView

PaintView

  • 一个很好用的绘图板
  • 可以绘制曲线、橡皮擦功能(可以擦除曲线)、直线、矩形、圆、添加图片
  • 可以对直线、矩形、圆、图片进行移动缩放旋转

如何集成

Project的build.gradle文件中加上

allprojects {repositories {...maven { url '' }}
}

Module的build.gradle文件中加上

implementation 'com.github.duoduoyoumaicai:PaintView:1.3'
  • 1.2之前的版本为预发布版本,部分功能无法使用,请直接引用1.2以上版本
  • 1.3增加撤销重做功能

使用方式

  • 在xml布局文件中引入PaintView
<zhanglei.com.paintview.PaintViewandroid:id="@+id/paintView"android:layout_width="match_parent"android:layout_height="match_parent" />
  • 设置为画笔模式,可以自由涂鸦
paintView.setDrawType(DrawTypeEnum.PEN);
  • 设置为橡皮模式,可以擦除自由涂鸦的曲线
paintView.setDrawType(DrawTypeEnum.ERASER);
  • 设置为矩形模式,可以绘制矩形
paintView.setDrawType(DrawTypeEnum.RECT);
  • 设置为圆模式,可以绘制椭圆
paintView.setDrawType(DrawTypeEnum.CIRCLE);
  • 设置为直线模式,可以绘制直线
paintView.setDrawType(DrawTypeEnum.LINE);
  • 设置为画笔颜色
 paintView.setPaintColor(paintColor);//paintColor类型为Color
  • 设置为画笔/橡皮粗细
 paintView.setPaintWidth(2);paintView.setRushPaintWidth(30);
  • 添加图片
 paintView.addPhotoByBitmap(bitmap);
  • 撤销
 paintView.undo();
  • 重做
 paintView.redo();
  • 设置为选择模式,这个模式可以选择几何图形和图片,对他们进行移动缩放旋转
 paintView.setDrawType(DrawTypeEnum.SELECT_STATUS);
  • 清空画板
 paintView.clear();
  • 获取画板截图
 paintView.getPaintViewScreen();
  • 不再使用PaintView的时候别忘了资源回收,可以在Activity的onDestroy方法调用
 paintView.destroy();