DrawBoard 是一个自定义 View 实现的画板;方便对图片进行各种编辑或涂鸦相关操作

DrawBoard

项目地址:jenly1314/DrawBoard 

简介: :art: DrawBoard 是一个自定义 View 实现的画板;方便对图片进行各种编辑或涂鸦相关操作
更多:作者   提 Bug   
标签:

DrawBoard 是一个自定义 View 实现的画板;方便对图片进行各种编辑或涂鸦相关操作_第1张图片

       

DrawBoard 是一个自定义 View 实现的画板;方便对图片进行各种编辑或涂鸦相关操作。

  • 主要支持的一些操作:撤销、恢复、清空、缩放
  • 主要支持的绘制模式:画路径、画点、画直线、画矩形、画椭圆、画圆、画文字、画图片、橡皮擦

Gif 展示

你也可以直接下载 演示 App 体验效果

DrawBoardView 自定义属性说明

属性 属性类型 默认值 属性说明
dbvMinZoom float 1.0 支持最小的放大倍数
dbvMaxZoom float 4.0 支持最大的放大倍数
dbvFit boolean true 是否自适应
dbvDrawEnabled boolean true 是否启用绘图
dbvZoomEnabled boolean true 是否启用缩放
dbvShowTouchPoint boolean true 是否显示触摸点
android:src drawable 设置图片(画板背景图层)
dbvPaintColor color #FFFF0000 画笔的颜色
dbvTouchPointColor color #AFCCCCCC 触摸点的颜色
dbvDrawTextSize dimension 15sp 绘制文本的字体大小
dbvDrawTextBold boolean false 绘制文本是否是粗体
dbvDrawTextUnderline boolean false 绘制文本是否需要下划线
dbvTouchTolerance float 4.0 触摸时允许的容差值
dbvTouchPointRatio float 1.2 触摸点的比例

引入

Gradle:

  1. 在 Project 的 build.gradle 里面添加远程仓库
allprojects {
    repositories {
        //...
        mavenCentral()
    }
}
  1. 在 Module 的 build.gradle 里面添加引入依赖项 ```gradle implementation 'com.github.jenly1314:drawboard:1.0.1'

## 示例

布局示例
```xml

    

主要支持的绘制模式


/**
 * 绘制路径
 */
DrawMode.DRAW_PATH
/**
 * 绘制点
 */
DrawMode.DRAW_POINT
/**
 * 绘制线
 */
DrawMode.DRAW_LINE
/**
 * 绘制矩形
 */
DrawMode.DRAW_RECT
/**
 * 绘制椭圆
 */
DrawMode.DRAW_OVAL
/**
 * 绘制圆
 */
DrawMode.DRAW_CIRCLE
/**
 * 绘制文本
 */
DrawMode.DRAW_TEXT
/**
 * 绘制图片
 */
DrawMode.DRAW_BITMAP
/**
 * 橡皮擦
 */
DrawMode.ERASER
/**
 * 如设置绘制模式为:DrawMode.DRAW_PATH
 */
drawBoardView.setDrawMode(DrawMode.DRAW_PATH)

主要的一些操作方法

/**
 * 撤销一步
 */
drawBoardView.undo()
/**
 * 恢复一步
 */
drawBoardView.redo()
/**
 * 清除画布
 */
drawBoardView.clear()
/**
 * 改变绘制模式
 */
drawBoardView.setDrawMode(drawMode)
/**
 * 设置画笔颜色
 */
drawBoardView.setPaintColor(paintColor)
/**
 * 设置画笔线条描边宽度
 */
drawBoardView.setLineStrokeWidth(lineStrokeWidth)
/**
 * 设置图片(画板背景图层)
 */
drawBoardView.setImageBitmap(bitmap)
/**
 * 获取图片(画板背景图层和画板图层合并后的图片)
 */
drawBoardView.getImageBitmap()

更多使用详情,请查看Demo中的源码使用示例或直接查看API 帮助文档

版本记录

v1.0.1:2022-2-17

  • 对外提供更多 Paint 相关配置

v1.0.0:2021-11-30

  • DrawBoard 初始版本

你可能感兴趣的:(android)