webpackJsonp([18],{DOrY:function(t,e,i){"use strict";var n=i("sbrb"),a=i.n(n),o=i("mtWM"),s=i.n(o),r=(i("vLgD"),i("PJh5")),h=i.n(r),c={name:"vueImgCropper",props:{width:{type:Number,default:500},height:{type:Number,default:500},maxScale:{type:Number,default:4},footerHeight:{type:Number,default:window.innerWidth/6.4*.88},compressionRatio:{type:Number,default:.92}},data:function(){return{config:{},show:!1,touch:!1,touchmoveTime:0,ratio:1,nativeWindowHeight:window.innerHeight,windowHeight:window.innerHeight-this.$props.footerHeight,windowWidth:window.innerWidth,singlePoint:null,speedX:0,speedY:0,scale:1,d:0,dx:0,dy:0,boxWidth:0,boxHeight:0,boxTop:0,boxLeft:0,naturalWidth:0,naturalHeight:0,startWidth:0,startHeight:0,imgTop:0,imgLeft:0,fileType:"",minScale:1,maskWidth:0,maskHeight:0,info:"",duration:0,timingFunction:"ease-in-out",easingTime:2e3,ouOfRangeEasing:300,remainingTime:0}},methods:{getImg:function(){this.$refs.fileInput.click()},showLoading:function(){this.$emit("showLoading")},hideLoading:function(){this.$emit("hideLoading")},changeFun:function(t){var e=this,i=t.target.files[0];if(e.fileType=i.type,!/image\/\w+/.test(i.type))return this.$emit("showError","文件必须为图片!"),!1;if(this.showLoading(),"undefined"==typeof FileReader)return this.hideLoading(),void this.$emit("showError","抱歉,你的浏览器不支持 FileReader");var n=new FileReader;n.readAsDataURL(i),n.onload=function(t){var n=this.result;a.a.getData(i,function(){a.a.getAllTags(this);var t=a.a.getTag(this,"Orientation"),i=new Image;i.onload=function(){var i,n,a=0,o=void 0,s=void 0;o=this.naturalWidth,s=this.naturalHeight;var r=document.createElement("canvas");r.width=i=o,r.height=n=s;var h=r.getContext("2d");switch(t){case 3:a=180,o=-i,s=-n;break;case 6:r.width=n,r.height=i,a=90,o=i,s=-n;break;case 8:r.width=n,r.height=i,a=270,o=-i,s=n}h.rotate(a*Math.PI/180),h.drawImage(this,0,0,o,s);var c=new Image;c.onload=function(){var t=this.naturalWidth,i=this.naturalHeight;e.naturalWidth=this.naturalWidth,e.naturalHeight=this.naturalHeight;var n=e.$refs.img;e.windowHeight/e.windowWidth>=e.height/e.width?(e.startWidth=e.windowWidth,e.startHeight=i/t*e.windowWidth,e.imgTop=(e.windowHeight-e.startHeight)/2,e.imgLeft=0,e.boxWidth=e.startWidth,e.boxHeight=e.boxWidth*e.ratio,e.boxTop=(e.windowHeight-e.boxHeight)/2,e.boxLeft=0,e.maskHeight=(e.windowHeight-e.boxHeight)/2,e.maskWidth=0):(e.startHeight=e.windowHeight,e.startWidth=t/i*e.windowHeight,e.imgLeft=(e.windowWidth-e.startWidth)/2,e.imgTop=0,e.boxHeight=e.startHeight,e.boxWidth=e.boxHeight/e.ratio,e.boxLeft=(e.windowWidth-e.boxWidth)/2,e.boxTop=0),n.setAttribute("src",c.src),e.scale=1,e.dx=0,e.dy=0,e.hideLoading(),e.show=!0},c.src=r.toDataURL(e.fileType)},i.src=n})}},hidePage:function(){this.$parent.showImgPage=!1,this.show=!1,this.cleanInput()},touchstart:function(t){this.touch=!0},mouseWheel:function(t){var e=this,i=.1;t.deltaY>0?(this.scalethis.maxScale&&(i/=3),this.scale=this.scale+i),setTimeout(function(){e.resetImg()},0)},touchmove:function(t){if(this.touch=!0,t.preventDefault(),t.targetTouches.length>=2||t.touches.length>=2){var e="",i="",n=[],a=[];t.targetTouches.length>=2?(n=[(e=t.targetTouches[0]).pageX,e.pageY],a=[(i=t.targetTouches[1]).pageX,i.pageY]):(n=[(e=t.touches[0]).pageX,e.pageY],a=[(i=t.touches[1]).pageX,i.pageY]);var o=Math.sqrt((n[0]-a[0])*(n[0]-a[0])+(n[1]-a[1])*(n[1]-a[1]));if(0===this.d)return void(this.d=o);var s=(o-this.d)/this.d;(this.scale>this.maxScale&&s>0||this.scale<.8&&s<0)&&(s/=3),this.scale=this.scale+s,this.d=o}else if(1===t.targetTouches.length){var r=t.targetTouches[0],h={x:r.pageX,y:r.pageY},c=Date.now();if(!this.singlePoint)return this.singlePoint=h,this.speedX=0,this.speedY=0,void(this.touchmoveTime=c);var l=this.dx+h.x-this.singlePoint.x,d=this.dy+h.y-this.singlePoint.y,u=c-this.touchmoveTime;this.speedX=(h.x-this.singlePoint.x)/u,this.speedY=(h.y-this.singlePoint.y)/u;var g=this.getRange();l>g.maxDx||lg.maxDy||dn.maxDx||this.dyn.maxDy)this.speedX=0,this.speedY=0,this.resetImg();else if(e-this.touchmoveTime>40||Math.abs(this.speedX)<.2&&Math.abs(this.speedY)<.2)this.speedX=0,this.speedY=0,this.resetImg();else{var a=-this.speedX/this.easingTime,o=-this.speedY/this.easingTime,s=this.dx,r=this.dy,h=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){window.setTimeout(t,1e3/60)},c=0,l=0,d=0,u=0,g=0,m=0,f=0,p=0;!function v(){var x=Date.now()-e;if(!t.touch&&x<=i){var w=t.speedX*x+.5*a*x*x,y=t.speedY*x+.5*o*x*x,b=s+w/2,S=r+y/2;if(0!==c)if(x<=c){var D=x-c+t.ouOfRangeEasing;t.dx=d+(f*D+g*D*D)}else t.dx=d;else if(0===c){var P=t.easingTime-x;(b>n.maxDx||bn.maxDx?n.maxDx:n.minDx,g=-(f=-a*P/2)/t.ouOfRangeEasing,c=x+t.ouOfRangeEasing,i=c>i?c:i),t.dx=b}if(0!==l)if(x<=l){var F=x-l+t.ouOfRangeEasing;t.dy=u+(p*F+m*F*F)}else t.dy=u;else if(0===l){var C=t.easingTime-x;(S>n.maxDy||Sn.maxDy?n.maxDy:n.minDy,m=-(p=-o*C/2)/t.ouOfRangeEasing,l=x+t.ouOfRangeEasing,i=l>i?l:i),t.dy=S}h(v)}}()}},resetImg:function(){var t,e,i,n,a,o=this,s=this.getRange(),r=this.dx,h=this.dy,c=this.scale,l=0,d=0,u=0;if(this.dxs.maxDx&&(l=s.maxDx-this.dx),this.dys.maxDy&&(d=s.maxDy-this.dy),this.scalethis.maxScale&&(u=this.maxScale-this.scale),0!==l||0!==d||0!==u){t=-2*l/(this.ouOfRangeEasing*this.ouOfRangeEasing),i=-t*this.ouOfRangeEasing,e=-2*d/(this.ouOfRangeEasing*this.ouOfRangeEasing),n=-e*this.ouOfRangeEasing,a=u/this.ouOfRangeEasing;var g=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){window.setTimeout(t,1e3/60)},m=Date.now();!function s(){var f=Date.now()-m;if(!o.touch)if(f<=o.ouOfRangeEasing){var p=i*f+.5*t*f*f,v=n*f+.5*e*f*f,x=a*f;o.dx=r+p,o.dy=h+v,o.scale=c+x,g(s)}else o.dx=r+l,o.dy=h+d,o.scale=c+u}()}},getRange:function(){var t=this.scale,e=this.scale;tthis.maxScale&&(e=this.maxScale);var i=-(this.startWidth*t-this.boxWidth)/2,n=-(this.startHeight*t-this.boxHeight)/2,a=(this.startWidth*t-this.boxWidth)/2,o=(this.startHeight*t-this.boxHeight)/2;return i>a&&(i=0,a=0),n>o&&(n=0,o=0),{minDx:i,minDy:n,maxDx:a,maxDy:o}},cutImg:function(){var t=this.$refs.canvas,e=t.getContext("2d"),i=this.$refs.img,n=this.getRange(),a=this.startWidth*this.scale,o=this.startHeight*this.scale,s=(-this.dx-n.minDx)/a*this.naturalWidth,r=(-this.dy-n.minDy)/o*this.naturalHeight,h=this.boxWidth/a*this.naturalWidth,c=this.boxHeight/o*this.naturalHeight;if(0==n.maxDx&&0==n.maxDy&&0==n.minDx&&0==n.minDy&&this.startHeight")+8,l=(h=h.substring(h.indexOf("4?g:e+8,s=[],h=0;h4?g:e+8,u-1);case 3:if(1==u)return t.getUint16(e+8,!a);for(o=u>2?g:e+8,s=[],h=0;ht.byteLength)return{};var o=p(t,e,e+a,c,n);if(o.Compression)switch(o.Compression){case 6:if(o.JpegIFOffset&&o.JpegIFByteCount){var s=e+o.JpegIFOffset,r=o.JpegIFByteCount;o.blob=new Blob([new Uint8Array(t.buffer,s,r)],{type:"image/jpeg"})}break;case 1:console.log("Thumbnail image format is TIFF, which is not implemented.");break;default:console.log("Unknown thumbnail image format '%s'",o.Compression)}else 2==o.PhotometricInterpretation&&console.log("Thumbnail image format is RGB, which is not implemented.");return o}(t,g,m,n),a}function y(t){var e={};if(1==t.nodeType){if(t.attributes.length>0){e["@attributes"]={};for(var i=0;i0)for(var i=0;i