2016-12-16 2 views
2

Fine Uploader의 5.11.10 버전을 사용하고 있습니다.서버에 제출하기 전에 Fine Uploader에서 이미지의 크기를 가져와 유효성을 검사하는 방법은 무엇입니까?

업로더에는 업로드 할 이미지의 최대/최소 너비/높이를 설정할 수있는 validation 기능이 있습니다. 그러나 이것은 나를 위해 충분하지 않습니다. 미리 정의 된 너비와 높이 값 쌍의 목록을 설정하여 이미지의 크기가 미리 정의 된 너비와 높이 쌍 중 하나와 일치하면 이미지가 유효성 검사를 통과하도록합니다.

onValidateonSubmit 콜백을 확인했습니다. 그들 중 아무도 치수에 대한 정보를 제공하지 않습니다. onSubmitgetFile 메서드를 사용하여 파일을 가져 오는 데 사용할 수있는 이미지의 ID를받습니다. 그러나 getFile도 치수를 제공하지 않습니다.

그래서 어떤 제안이 필요합니까?

답변

2

잠시 동안 검색 한 후 내 질문에 답하십시오.

이미지의 크기가 결정되는 Fine Uploader의 source code에서 로직을 빌 렸습니다. 요점은 onSubmit 처리기에서 약속을 반환하는 것입니다.

참고 :my_custom_validation은이 답변의 범위를 벗어나는 사용자 지정 방법입니다. 자신의 필요에 맞게 구현해야합니다.

onSubmit: function(id, name){ 
    var promise = new qq.Promise(); 
    var file = this.getFile(id); 
    var image = new Image(); 

    var url = window.URL && window.URL.createObjectURL ? window.URL : 
     window.webkitURL && window.webkitURL.createObjectURL ? window.webkitURL : 
     null; 

    image.onload = function(){ 
     if(my_custom_validation(this.width, this.height)){ 
      promise.success();  
     } else { 
      promise.failure(); 
     } 

    }; 

    image.src = url.createObjectURL(file); 

    return promise; 
} 
+0

이것은 작동 중입니다. :) – Shrabanee