vue-cropperjs,vuecropper文档

  vue-cropperjs,vuecropper文档

  这篇文章主要为大家介绍了某视频剪辑软件使用武埃-克罗珀裁剪图片,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

  

目录

   一、安装:二、使用:三、内置方法:四、使用:总结

  官网:

  https://github.com/xyxiao001/vue-cropper

  

一、安装:

  安装武埃-克罗珀

  或者

  纱线添加剪切机

  

二、使用:

  从“vue-cropper”导入VueCropper

  设置组件:

  导出默认值{

  组件:{

  VueCropper

  }

  }

  模板中插入:(外面需要套一个div,用于设置插件显示的大小)

  vueCropper

  "庄稼"

  :img=option.img

  :outputSize=option.size

  :outputType=option.outputType

  /vueCropper

  data(){

  返回{

  选项:{

  img: imgUrl ,//img的统一资源定位器或者base64

  尺寸:1,

  输出类型: png ,

  }

  }

  }

  

三、内置方法:

  名称

  功能

  默认值

  可选值

  图片

  裁剪图片的地址

  空

  全球资源定位器(统一资源定位器)地址/base64/blob

  输出尺寸

  裁剪生成图片的质量

  一

  0.1 - 1

  输出类型

  裁剪图片的地址

  jpg (jpg需要传入jpeg)

  jpeg/png/web

  内置方法:通过这个参考文献调用插件。

  这个refs.cropper.startCrop()开始截图(如果没有设置截图框的话,通过这个启动截图框)

  这个refs.cropper.stopCrop()停止截图

  这个refs.cropper.clearCrop()清除截图

  这个. refs.cropper.getCropData()获取截图信息(得到截图的统一资源定位器或者base64)

  //获取截图的base64数据

  这个参考文献。克罗珀。获取作物数据((数据)={

  //做点什么

  console.log(数据)

  })

  //获取截图的一滴数据

  这个参考文献。克罗珀。getcropblob((data)={

  //做点什么

  console.log(数据)

  })

  

四、使用:

  模板

  差异

  el-dialog title=图片剪裁:可见。sync= show 附加到正文宽度= 950 px 居中

  裁剪者-内容

  div class=cropper-box

  div class=cropper

  vue-cropper ref= cropper :img=选项。 img :输出大小=选项。“输出大小”:输出类型=“选项。“输出类型”:info=“选项。 can scale :autoCrop=选项。“自动裁剪宽度”:自动裁剪高度=“选项。“自动裁剪高度”:fixed=“选项。 fixed :fixed number=选项。 full :固定框=选项。“固定盒”:罐

  /vue-cropper

  /div

  !-底部操作工具按钮-

  div class=footer-btn

  div class=scope-btn

  将class=btn 标记为=上传选择图片/标签

  输入类型= file id= uploads style= position:absolute;clip:rect(0 0 0 0);accept=image/png,image/jpeg,image/gif,image/jpg @ change= selectImg($ event)

  El-button size= mini type= danger plain icon= El-icon-zoom-in @ click= change scale(1)放大/el-button

  El-button size= mini type= danger plain icon= El-icon-zoom-out @ click= change scale(-1)缩小/el-button

  El-button size=迷你 type=危险plain@click=rotateleft左旋转/el-button

  El-button size=迷你 type=危险plain@click=rotateright右旋转/el-button

  /div

  div class=上传-btn

  El-button size= mini type= success @ click= upload img( blob )上传图片我是El-icon-上传/I/El-按钮

  /div

  /div

  /div

  !-预览效果图-

  div class=显示预览

  div:style=预览预览

  img:src=预览。 URL :style=预览。 img

  /div

  /div

  /div

  /el-dialog

  /div

  /模板

  脚本

  从“vue-cropper”导入VueCropper

  导出默认值{

  名称: CropperImage ,

  组件:{

  VueCropper

  },

  data () {

  返回{

  显示:this.visible,

  名字:这个。姓名,

  预览:{},

  选项:{

  img: ,//裁剪图片的地址

  outputSize: 1,//裁剪生成图片的质量(可选0.1 - 1)

  outputType: jpeg ,//裁剪生成图片的格式(jpeg png webp)

  info: true,//裁剪框的大小信息,图片大小信息

  canScale: true,//图片是否允许滚轮缩放

  autoCrop: true,//是否默认生成截图框

  自动裁剪宽度:300,//默认生成截图框宽度

  自动裁剪:200,//默认生成截图框高度

  fixed: true,//是否开启截图框宽高固定比例

  固定号码:[1.5,1],//截图框的宽高比例

  full: true,//false按原比例裁切图片,不失真

  fixedBox: true,//固定截图框大小,不允许改变

  canMove: false,//上传图片是否可以移动

  canMoveBox: true,//截图框能否拖动

  原文:假,//上传图片按照原始比例渲染

  中心框:false,//截图框是否被限制在图片里面

  高度:真,//是否按照设备的项目文件输出等比例图片

  infoTrue: false,//true为展示真实输出图片宽高,假的展示看到的截图框宽高

  maxImgSize: 3000,//限制图片最大宽度和高度

  放大:1,//图片根据截图框输出比例倍数

  模式: 230像素150像素//图片默认渲染方式

  }

  };

  },

  道具:{

  可见:{

  类型:布尔型,

  默认值:错误

  },

  名称:{

  类型:字符串,

  默认值:""

  }

  },

  观察:{

  可见(){

  this.show=this。可见

  }

  },

  方法:{

  //初始化函数

  imgLoad(消息){

  },

  //图片缩放

  变更比例(数量){

  num=num 1

  这个refs.cropper.changeScale(num)

  },

  //向左旋转

  rotateLeft () {

  这个refs.cropper.rotateLeft()

  },

  //向右旋转

  向右旋转(){

  这个参考文献。克罗珀。向右旋转()

  },

  //实时预览函数

  实时(数据){

  this.previews=数据

  },

  //选择图片

  选择(e) {

  let file=e.target.files[0]

  如果(!/\.(jpgjpegpngJPGPNG)$/.测试(目标值)){

  这个消息({

  消息: 图片类型要求:jpeg、jpg、png ,

  类型:"错误"

  });

  返回错误的

  }

  //转化为一滴

  let reader=new FileReader()

  reader.onload=(e)={

  让数据

  如果(e .目标的类型。result=== object ){

  数据=窗口URL.createObjectURL(新Blob([e.target.result]))

  }否则{

  数据=e。目标。结果

  }

  this.option.img=data

  }

  //转化为base64

  reader.readAsDataURL(文件)

  },

  //上传图片

  上传(类型){

  让这个=这个

  if (type===blob) {

  //获取截图的一滴数据

  这个参考文献。克罗珀。getcropblob(async(data)={

  let formData=new formData();

  formData.append(file ,Data,new Date().getTime() .png’)

  //调用爱可信上传

  让{ data: res }=await _this .$ http。post(` $ { msbase URL } common-tools-web/file/upload/image ` formData)

  if (res.code===200) {

  _这个消息({

  消息:res.desc,

  类型:"成功"

  });

  假设数据=结果

  let imgInfo={

  名称:data.name,

  id: data.id,

  url: data.url

  };

  _这个. emit(uploadImgSuccess ,imgInfo);

  }否则{

  _这个消息({

  消息: 文件服务异常,请联系管理员!,

  类型:"错误"

  })

  }

  })

  }

  }

  }

  }

  /脚本

  样式范围语言=少。裁剪者-内容{

  显示器:flex

  显示:-WebKit-flex;

  justify-content:flex-end;收割箱{

  flex:1;

  宽度:100%;收割者

  宽度:自动;

  高度:300像素

  }

  }。显示-预览{

  flex:1;

  -WebKit-flex:1;

  显示器:flex

  显示:-WebKit-flex;

  对齐-内容:居中;预览{

  溢出:隐藏;

  边框:1px纯色# 67c23a

  背景:# cccccc

  }

  }

  }。页脚-btn {

  边距-顶部:30px

  显示器:flex

  显示:-WebKit-flex;

  justify-content:flex-end;范围-btn {

  显示器:flex

  显示:-WebKit-flex;

  justify-content:space-between;

  右填充:10px

  }。上传-btn {

  flex:1;

  -WebKit-flex:1;

  显示器:flex

  显示:-WebKit-flex;

  对齐-内容:居中;

  }。btn {

  大纲:无;

  显示:内嵌-块;

  行高:1;

  空白:nowrap

  光标:指针;

  -网络工具包-外观:无;

  文本对齐:居中;

  -WebKit-box-sizing:border-box;

  框大小:边框-框;

  大纲:0;

  -网络工具包-过渡:0.1秒

  转场:0.1秒

  字体粗细:500;

  填充:8px 15px

  字体大小:12px

  边框半径:3px

  颜色:# fff

  背景色:# 409eff

  边框颜色:# 409eff

  右边距:10px

  }

  }

  /风格

  效果:

  

总结

  本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: