You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

77 lines
2.2 KiB

  1. # ksp-cropper
  2. ## 高性能图片裁剪工具
  3. ### 属性说明
  4. |属性 |类型 |默认 |备注 |
  5. | :--------: | :-----: | :----: | :----: |
  6. | url |String | "" | 需要裁剪的图片路径,为空时控件隐藏,不为空时控件显示|
  7. | mode |String | "free" | 裁剪模式|
  8. | width |Number | 200 | 图片裁剪后的宽度,固定大小时有效|
  9. | height |Number | 200 | 图片裁剪后的高度,固定大小时有效|
  10. | maxWidth |Number | 1024 | 图片裁剪后的最大宽度 |
  11. | maxHeight |Number | 1024 | 图片裁剪后的最大高度 |
  12. ### mode有效值
  13. | 模式 |值 |说明 |
  14. | :-----: | :-----: | :----: |
  15. | 固定模式 |fixed | 裁剪出指定大小的图片,一般用于头像上传 |
  16. | 等比缩放 |ratio | 限定宽高比,裁剪大小不固定 |
  17. | 自由模式 |free | 不限定宽高比,裁剪大小不固定 |
  18. ### 事件说明
  19. |事件名称 |说明 |返回 |
  20. | :--------: | :-----: | :----: |
  21. | ok |点击确定按钮 | e:{path} |
  22. | cancel |点击取消按钮 | - |
  23. ### 示例
  24. ```html
  25. <template>
  26. <view>
  27. <button @click="select">选择图片</button>
  28. <image mode="widthFix" :src="path"/>
  29. <ksp-cropper mode="free" :width="200" :height="140" :maxWidth="1024" :maxHeight="1024" :url="url" @cancel="oncancel" @ok="onok"></ksp-cropper>
  30. </view>
  31. </template>
  32. <script>
  33. export default {
  34. data() {
  35. return {
  36. url: "",
  37. path: ""
  38. }
  39. },
  40. onLoad() {
  41. },
  42. methods: {
  43. select() {
  44. uni.chooseImage({
  45. count: 1,
  46. success: (rst) => {
  47. // 设置url的值,显示控件
  48. this.url = rst.tempFilePaths[0];
  49. }
  50. });
  51. },
  52. onok(ev) {
  53. this.url = "";
  54. this.path = ev.path;
  55. },
  56. oncancel() {
  57. // url设置为空,隐藏控件
  58. this.url = "";
  59. }
  60. }
  61. }
  62. </script>
  63. ```
  64. ### 注意
  65. 1.微信小程序从基础库 2.21.0 开始, wx.chooseImage 停止维护,请使用 uni.chooseMedia 代替。<br/>
  66. 2.微信小程序真机调试会报错,但正常运行是不会有问题的。<br/>
  67. 3.uni-app版本不断更新,插件有时无法适应新版本,感谢大家及时提交bug,但希望大家手下留情,不要轻易给差评。