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 相关文章推荐
改版了网上的一个js操作userdata
Apr 27 Javascript
获取元素距离浏览器周边的位置的方法getBoundingClientRect
Apr 17 Javascript
JavaScript字符串对象toLowerCase方法入门实例(用于把字母转换为小写)
Oct 17 Javascript
深入分析Cookie的安全性问题
Mar 01 Javascript
JavaScript实现梯形乘法表的方法
Apr 25 Javascript
jQuery+jsp下拉框联动获取本地数据的方法(附源码)
Dec 03 Javascript
React.js入门实例教程之创建hello world 的5种方式
May 11 Javascript
JavaScript中的各种操作符使用总结
May 26 Javascript
BootStrop前端框架入门教程详解
Dec 25 Javascript
JS获取url参数,JS发送json格式的POST请求方法
Mar 29 Javascript
在vue里使用codemirror遇到的问题
Nov 01 Javascript
移动端底部导航固定配合vue-router实现组件切换功能
Jun 13 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
Smarty模板学习笔记之Smarty简介
2014/05/20 PHP
腾讯CMEM的PHP扩展编译安装方法
2015/09/25 PHP
php无限分类使用concat如何实现
2015/11/05 PHP
PHP使用Pear发送邮件(Windows环境)
2016/01/05 PHP
laravel中命名路由的使用方法
2017/02/24 PHP
Lumen timezone 时区设置方法(慢了8个小时)
2018/01/20 PHP
javascript Firefox与IE 替换节点的方法
2010/02/24 Javascript
javascript attachEvent绑定多个事件执行顺序问题
2010/10/20 Javascript
editable.js 基于jquery的表格的编辑插件
2011/10/24 Javascript
JavaScript中判断页面关闭、页面刷新的实现代码
2014/08/27 Javascript
BootStrap和jQuery相结合实现可编辑表格
2016/04/21 Javascript
浅析jquery如何判断滚动条滚到页面底部并执行事件
2016/04/29 Javascript
原生js和jquery分别实现横向导航菜单效果
2016/05/13 Javascript
JS温故而知新之变量提升和时间死区
2019/01/27 Javascript
详解微信小程序框架wepy踩坑记录(与vue对比)
2019/03/12 Javascript
JavaScript一元正号运算符示例代码
2019/06/30 Javascript
Python正则表达式介绍
2012/08/06 Python
Python基础之getpass模块详细介绍
2017/08/10 Python
Python使用matplotlib的pie函数绘制饼状图功能示例
2018/01/08 Python
python判断完全平方数的方法
2018/11/13 Python
Python shutil模块用法实例分析
2019/10/02 Python
Python 使用 environs 库定义环境变量的方法
2020/02/25 Python
python可迭代对象去重实例
2020/05/15 Python
使用css3实现的windows8开机加载动画
2014/12/09 HTML / CSS
利用CSS3的3D效果制作正方体
2020/03/10 HTML / CSS
施华洛世奇韩国官网:SWAROVSKI韩国
2018/06/05 全球购物
乌克兰鞋类购物网站:Eobuv.com.ua
2020/11/28 全球购物
介绍下Java的输入输出流
2014/01/22 面试题
药剂专业毕业生求职信
2014/06/24 职场文书
教师工作自我鉴定范文
2014/09/14 职场文书
2014年计划生育工作总结
2014/11/14 职场文书
2014年房地产个人工作总结
2014/12/20 职场文书
社区义诊通知
2015/04/24 职场文书
python基于tkinter制作m3u8视频下载工具
2021/04/24 Python
如何使用pdb进行Python调试
2021/06/30 Python
实战 快速定位MySQL的慢SQL
2022/03/22 MySQL