簡體   English   中英

ng img crop-裁剪現有圖像

[英]ng img crop - cropping existing images

ng-img-crop是一個很棒的指令,但是我很難適應它。 我的問題是,當用戶擁有圖像時,如果他們願意,我想給他們選擇調整圖像大小的選項。

因此,這是我嘗試使用的代碼:

js:

vm.userImageOriginal = vm.editUser.image_pkey ? 'api/file/' + vm.editUser.image_pkey : null;

的HTML:

<img-crop image="profileVM.userImageOriginal" result-image="profileVM.userImageNew"
                                          area-type="square" result-image-size="300" on-change="profileVM.imageCropped = true;"></img-crop>

所以我有兩個問題:

1)如果用戶確實更改了裁剪,我只想上傳新圖像。 我嘗試在on-change中設置一個標志,但是看起來on-change也可以在初始化時執行。 有什么方法可以知道用戶是否實際裁剪了嗎?

2)有什么方法可以設置正方形/圓形的位置。 在我的方案中,如果存在現有的用戶圖像,我想將裁剪正方形設置為當前圖像的尺寸(即圖像的邊框)。

提前致謝。

像這樣解決:

將以下屬性添加到html中的ng-img-crop指令中:

on-load-done="profileVM.addCroppingWatcher()"

這是函數:

function addCroppingWatcher(){
            if (croppingWatcher)
                return;

            $window.setTimeout(function(){
                croppingWatcher = $scope.$watch(
                    function(){ return vm.userImageNew; },
                    function(newVal, oldVal){
                        if (oldVal && oldVal != newVal) {
                            vm.imageCropped = true;
                            croppingWatcher();
                        }
                    }
                );
            }, 0);
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM