欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-04-09 21:57:45
最近闲着无聊,写了一个实用代码,angularjs通过ng-img-crop实现头像截取,分享给大家 1.安装插件 bower install ngimgcro...

最近闲着无聊,写了一个实用代码,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

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