不依赖插件,用原生js和canvas实现一个移动端图片编辑器

281 阅读1分钟

一、介绍

用原生js和canvas写的一个移动端图片编辑器

二、功能说明

  1. 支持 vue、react、原生 js 项目的 h5 页面
  2. 可以双指放大缩小图片
  3. 可以在图片上进行涂鸦
  4. 可以输入文字和输入法表情
  5. 文字后可以单指移动文字
  6. 点击文字后,点击操作右上角的按钮拖拽可以放大缩小文字。点击操作底部图标可以旋转文字
  7. 可以撤回内容
  8. 支持原图导出,也可以导出图片压缩质量

三、在线体验地址

ai.xkcoin.cn/index.html

四、源码地址(欢迎star)

github.com/lijibing01/…

五、演示

ezgif-3316bfddd8bd29.gif

六、使用方法

  1. yarn add picture_edit
  2. import * as PED from 'picture_edit'
  3. new PED.drawing(url, options)
  4. 参考: github.com/lijibing01/…

七、参数说明

参数名称默认值类型说明
spaceLeft30number初始化图片的左右间距
spaceTop30number距离顶部和底部的距离
fontSize14number文字大小
fontPaddingLeft3number文字上下padding
fontPaddingTop5number文字左右padding
fontRaduis5number文字圆角半径
fontLineHeight1.2number文字行高比例
fontLineWidth5number线条宽度
fontShadowBlur5number线条阴影
operatePaddingLeft28number操作模块的左右边距
operatePaddingTop10number操作模块的上下边距
fontColor'#000000'string文字颜色
fontBgColor'#ffffff'string文字背景颜色
fontFamily"Arial"string字体
textOperateColor"#884cf3"string操作模块的边框颜色
getDataURL() => {}function回调函数,获取编辑后的图片
outType'image/jpeg'stringimage/png、image/webp、image/jpeg
encoderOptions1numberoutType 为 image/jpeg 或 image/webp 的情况下,可以从 0 到 1 的区间内选择导出图片的质量