91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Angular如何實現圖片裁剪工具ngImgCrop

發布時間:2021-07-06 14:26:01 來源:億速云 閱讀:205 作者:小新 欄目:web開發

小編給大家分享一下Angular如何實現圖片裁剪工具ngImgCrop,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

ngImgCrop是AngularJS的一個圖片裁剪插件,它實際上是一個封裝好的AngularJs指令,可以讓用戶以圓框或者方框來裁剪圖片

1、使用效果截圖

Angular如何實現圖片裁剪工具ngImgCrop   Angular如何實現圖片裁剪工具ngImgCrop

2、demo演示

demo演示地址 http://jsfiddle.net/alexk111/rw6q9/

3、下載安裝

可以使用兩種方式來下載ngImgCrop插件

a、GitHub下載:git clone https://github.com/alexk111/ngImgCrop.git

b、bower安裝,如果項目中使用了bower,使用命令bower install ngImgCrop即可

4、添加js和css依賴到項目中

<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" >

5、添加AngularJs依賴

var myAppModule = angular.module('MyApp', ['ngImgCrop']);

6、使用樣例

<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、屬性介紹

<img-crop
  image="{string}"  需要進行裁剪的圖片文件  如$scope.myImage
  result-image="{string}"  保存裁剪結果的圖片文件  如$scope.myCroppedImage
  [change-on-fly="{boolean}"]   可選項:表示是否在拖拽裁剪區域時實時更新結果文件
  [area-type="{circle|square}"]  可選項:表示裁剪窗口是方的還是圓的,默認是圓的
  [area-min-size="{number}"]    可選項,表示裁剪結果的最小大小,默認是80,即結果最小是高80像素、寬80像素
  [result-image-size="{number}"]  可選項,表示裁剪結果大小,默認是200,即高200像素、寬200像素
  [result-image-format="{string}"]  可選項,表示裁剪結果保存的文件類型,可以選擇image/jpeg、image/png、image/webp,默認是image/png
  [result-image-quality="{number}"]  可選項,表示裁剪結果的質量,取值在0.0到1.0之間
  [on-change="{expression}"]      可選項,檢測到圖片修改后執行的表達式

  [on-load-begin="{expression"]    可選項,圖片開始加載執行的表達式
  [on-load-done="{expression"]    可選項,圖片加載完成執行的表達式
  [on-load-error="{expression"]    可選項,圖片加載失敗執行的表達式
></img-crop>

8、注意點

結果文件是base64的格式,如果是直接展示的話沒有問題,如果是以文件格式要將圖片上傳給后臺服務器,那么還需要將base64轉換成圖片文件格式,附上我自己的轉換代碼

$scope.file可直接作為File文件格式上傳至后臺服務器

function getBlobBydataURL(dataURI,type){
      var binary = atob(dataURI.split(',')[1]);
      var array = [];
      for(var i = 0; i < binary.length; i++) {
        array.push(binary.charCodeAt(i));
      }
      return new Blob([new Uint8Array(array)], {type:type });
    }

    var $Blob = getBlobBydataURL($scope.myCroppedImage,"image/png");
    $scope.file = $Blob;

看完了這篇文章,相信你對“Angular如何實現圖片裁剪工具ngImgCrop”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

京山县| 霍州市| 会同县| 彰化市| 长子县| 政和县| 囊谦县| 衡阳市| 星子县| 彭州市| 克拉玛依市| 泸溪县| 赞皇县| 延吉市| 屏南县| 资兴市| 永宁县| 长春市| 清涧县| 舞阳县| 铜鼓县| 清新县| 明溪县| 普陀区| 子长县| 灵宝市| 固阳县| 灵丘县| 深圳市| 太保市| 鱼台县| 唐山市| 津市市| 宣威市| 栾城县| 巴东县| 辛集市| 银川市| 无锡市| 都江堰市| 泉州市|