AngularJS通过ng-Img-Crop实现头像截取的示例


Posted in Javascript onAugust 17, 2017

最近闲着无聊,写了一个实用代码,AngularJS通过ng-Img-Crop实现头像截取,分享给大家

1.安装插件

bower install ngImgCrop

2.引入插件

<script src="ng-img-crop.js"></script>

<link rel="stylesheet" type="text/css" href="ng-img-crop.css" rel="external nofollow" rel="external nofollow" >

3.添加依赖

var app = angular.module('myApp', ['ngImgCrop']);

4.用法

<img-crop image="myImage" result-image="myCroppedImage"></img-crop>

5.参数

<img-crop
  image="{string}"         //需要截取的图片变量名
  result-image="{string}"     //截取后所赋值的变量名
  [change-on-fly="{boolean}"]    //是否实时更新用户截取图像的预览,若为否,则会等用户停止动作后更新预览的图像
  [area-type="{circle|square}"]   //截取图像框的形状(圆形或正方形)
  [area-min-size="{number}"]    //截取图像框的最小面积
  [result-image-size="{number}"]  //截取后图像的大小
  [result-image-format="{string}"] //截取后图像的格式
  [result-image-quality="{number}"] //截取后图像的质量
  [on-change="{expression}"]    
  [on-load-begin="{expression"]
  [on-load-done="{expression"]
  [on-load-error="{expression"]
></img-crop>

6.Demo

<html>
<head>
 <script src="angular.js"></script>
 <script src="ng-img-crop.js"></script>
 <link rel="stylesheet" type="text/css" href="ng-img-crop.css" rel="external nofollow" rel="external nofollow" >
 <style>
  .cropArea {
   background: #E4E4E4;
   overflow: hidden;
   width:500px;
   height:350px;
  }
 </style>
 <script>
  angular.module('app', ['ngImgCrop'])
   .controller('Ctrl', function($scope) {
    $scope.myImage='';
    $scope.myCroppedImage='';

    var handleFileSelect=function(evt) {
     var file=evt.currentTarget.files[0];
     var reader = new FileReader();
     reader.onload = function (evt) {
      $scope.$apply(function($scope){
       $scope.myImage=evt.target.result;
      });
     };
     reader.readAsDataURL(file);
    };
    angular.element(document.querySelector('#fileInput')).on('change',handleFileSelect);
   });
 </script>
</head>
<body ng-app="app" ng-controller="Ctrl">
 <div>Select an image file: <input type="file" id="fileInput" /></div>
 <div class="cropArea">
  <img-crop image="myImage" result-image="myCroppedImage"></img-crop> 
  <!-- 截取图片框 -->
 </div>
 <div>Cropped Image:</div>
 <div><img ng-src="{{myCroppedImage}}" /></div>
 <!-- 预览图片框 -->
</body>
</html>

7.官方文档

https://github.com/alexk111/ngImgCrop

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript解析URL参数示例代码
Aug 12 Javascript
Javascript MVC框架Backbone.js详解
Sep 18 Javascript
第一次接触神奇的Bootstrap表单
Jul 27 Javascript
浅谈jQuery效果函数
Sep 16 Javascript
微信小程序(应用号)开发新闻客户端实例
Oct 24 Javascript
详解node nvm进行node多版本管理
Oct 21 Javascript
jQuery+ajax读取json数据并按照价格排序示例
Mar 28 jQuery
在element-ui的select下拉框加上滚动加载
Apr 18 Javascript
CKeditor4 字体颜色功能配置方法教程
Jun 26 Javascript
layui 弹出删除确认界面的实例
Sep 06 Javascript
jQuery实现数字华容道小游戏(实例代码)
Jan 16 jQuery
原生js实现下拉框选择组件
Jan 20 Javascript
Javascript中的getter和setter初识
Aug 17 #Javascript
简单实现js进度条加载效果
Mar 25 #Javascript
你可能不知道的JSON.stringify()详解
Aug 17 #Javascript
vue组件Prop传递数据的实现示例
Aug 17 #Javascript
js实现随机点名小功能
Aug 17 #Javascript
浅谈Vuejs Prop基本用法
Aug 17 #Javascript
简单快速的实现js计算器功能
Aug 17 #Javascript
You might like
PHP之header函数详解
2021/03/02 PHP
JavaScript对象、属性、事件手册集合方便查询
2010/07/04 Javascript
JavaScript表单通过正则表达式验证电话号码
2014/03/14 Javascript
基于BootStrap Metronic开发框架经验小结【一】框架总览及菜单模块的处理
2016/05/12 Javascript
JS中的进制转换以及作用
2016/06/26 Javascript
mvc中form表单提交的三种方式(推荐)
2016/08/10 Javascript
AngularJs Scope详解及示例代码
2016/09/01 Javascript
浅谈jquery拼接字符串效率比较高的方法
2017/02/22 Javascript
多个上传文件用js验证文件的格式和大小的方法(推荐)
2017/03/09 Javascript
Vue实现双向数据绑定
2017/05/03 Javascript
nuxt框架中路由鉴权之Koa和Session的用法
2018/05/09 Javascript
vue升级之路之vue-router的使用教程
2018/08/14 Javascript
vue中上传视频或图片或图片和文字一起到后端的解决方法
2019/12/01 Javascript
基于vue实现简易打地鼠游戏
2020/08/21 Javascript
JavaScript实现轮播图效果
2020/10/30 Javascript
Python enumerate遍历数组示例应用
2008/09/06 Python
Python脚本实现自动将数据库备份到 Dropbox
2017/02/06 Python
Python 正则表达式实现计算器功能
2017/04/29 Python
Python设计模式之外观模式实例详解
2019/01/17 Python
python对csv文件追加写入列的方法
2019/08/01 Python
SELENIUM自动化模拟键盘快捷键操作实现解析
2019/10/28 Python
python多线程实现代码(模拟银行服务操作流程)
2020/01/13 Python
Python中有几个关键字
2020/06/04 Python
纯CSS3实现扇形动画菜单(简化版)实例源码
2017/01/17 HTML / CSS
CSS3 animation ? steps 函数详解
2019/08/30 HTML / CSS
CSS3实现莲花绽放的动画效果
2020/11/06 HTML / CSS
巴西葡萄酒销售网站:Wine.com.br
2017/11/07 全球购物
英国第一的购买便宜玩具和游戏的在线购物网站:Bargain Max
2018/01/24 全球购物
预备党员思想汇报
2014/01/08 职场文书
教师三严三实对照检查材料
2014/09/25 职场文书
先进班集体事迹材料
2014/12/25 职场文书
业务员年终工作总结2015
2015/05/28 职场文书
创业计划书之o2o水果店
2019/08/30 职场文书
mysql升级到5.7时,wordpress导数据报错1067的问题
2021/05/27 MySQL
CSS3实现360度循环旋转功能
2022/02/12 HTML / CSS
Win11运行育碧游戏总是崩溃怎么办 win11玩育碧游戏出现性能崩溃的解决办法
2022/04/06 数码科技