2 lines
5.8 KiB
JavaScript
2 lines
5.8 KiB
JavaScript
var t,e;function n(){if(e)return t;e=1;var n=[512,512,456,512,328,456,335,512,405,328,271,456,388,335,292,512,454,405,364,328,298,271,496,456,420,388,360,335,312,292,273,512,482,454,428,405,383,364,345,328,312,298,284,271,259,496,475,456,437,420,404,388,374,360,347,335,323,312,302,292,282,273,265,512,497,482,468,454,441,428,417,405,394,383,373,364,354,345,337,328,320,312,305,298,291,284,278,271,265,259,507,496,485,475,465,456,446,437,428,420,412,404,396,388,381,374,367,360,354,347,341,335,329,323,318,312,307,302,297,292,287,282,278,273,269,265,261,512,505,497,489,482,475,468,461,454,447,441,435,428,422,417,411,405,399,394,389,383,378,373,368,364,359,354,350,345,341,337,332,328,324,320,316,312,309,305,301,298,294,291,287,284,281,278,274,271,268,265,262,259,257,507,501,496,491,485,480,475,470,465,460,456,451,446,442,437,433,428,424,420,416,412,408,404,400,396,392,388,385,381,377,374,370,367,363,360,357,354,350,347,344,341,338,335,332,329,326,323,320,318,315,312,310,307,304,302,299,297,294,292,289,287,285,282,280,278,275,273,271,269,267,265,263,261,259],r=[9,11,12,13,13,14,14,15,15,15,15,16,16,16,16,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24];function a(t,e,n,r,a){if("string"==typeof t)t=document.getElementById(t);else if("undefined"!=typeof HTMLCanvasElement&&!t instanceof HTMLCanvasElement)return;var o,f=t.getContext("2d");try{try{o=f.getImageData(e,n,r,a)}catch(i){throw new Error("unable to access local image data: "+i)}}catch(i){throw new Error("unable to access image data: "+i)}return o}function o(t,e,n,r,o,i){if(!(isNaN(i)||i<1)){i|=0;var g=a(t,e,n,r,o);g=f(g,e,n,r,o,i),t.getContext("2d").putImageData(g,e,n)}}function f(t,e,a,o,f,i){var g,l,s,x,c,d,b,m,v,h,y,p,w,E,I,C,B,H,L,M,N,T,D,R,G=t.data,A=i+i+1,W=o-1,j=f-1,k=i+1,q=k*(k+1)/2,z=new u,F=z;for(s=1;s<A;s++)if(F=F.next=new u,s==k)var J=F;F.next=z;var K=null,O=null;b=d=0;var P=n[i],Q=r[i];for(l=0;l<f;l++){for(C=B=H=L=m=v=h=y=0,p=k*(M=G[d]),w=k*(N=G[d+1]),E=k*(T=G[d+2]),I=k*(D=G[d+3]),m+=q*M,v+=q*N,h+=q*T,y+=q*D,F=z,s=0;s<k;s++)F.r=M,F.g=N,F.b=T,F.a=D,F=F.next;for(s=1;s<k;s++)x=d+((W<s?W:s)<<2),m+=(F.r=M=G[x])*(R=k-s),v+=(F.g=N=G[x+1])*R,h+=(F.b=T=G[x+2])*R,y+=(F.a=D=G[x+3])*R,C+=M,B+=N,H+=T,L+=D,F=F.next;for(K=z,O=J,g=0;g<o;g++)G[d+3]=D=y*P>>Q,0!=D?(D=255/D,G[d]=(m*P>>Q)*D,G[d+1]=(v*P>>Q)*D,G[d+2]=(h*P>>Q)*D):G[d]=G[d+1]=G[d+2]=0,m-=p,v-=w,h-=E,y-=I,p-=K.r,w-=K.g,E-=K.b,I-=K.a,x=b+((x=g+i+1)<W?x:W)<<2,m+=C+=K.r=G[x],v+=B+=K.g=G[x+1],h+=H+=K.b=G[x+2],y+=L+=K.a=G[x+3],K=K.next,p+=M=O.r,w+=N=O.g,E+=T=O.b,I+=D=O.a,C-=M,B-=N,H-=T,L-=D,O=O.next,d+=4;b+=o}for(g=0;g<o;g++){for(B=H=L=C=v=h=y=m=0,p=k*(M=G[d=g<<2]),w=k*(N=G[d+1]),E=k*(T=G[d+2]),I=k*(D=G[d+3]),m+=q*M,v+=q*N,h+=q*T,y+=q*D,F=z,s=0;s<k;s++)F.r=M,F.g=N,F.b=T,F.a=D,F=F.next;for(c=o,s=1;s<=i;s++)d=c+g<<2,m+=(F.r=M=G[d])*(R=k-s),v+=(F.g=N=G[d+1])*R,h+=(F.b=T=G[d+2])*R,y+=(F.a=D=G[d+3])*R,C+=M,B+=N,H+=T,L+=D,F=F.next,s<j&&(c+=o);for(d=g,K=z,O=J,l=0;l<f;l++)G[(x=d<<2)+3]=D=y*P>>Q,D>0?(D=255/D,G[x]=(m*P>>Q)*D,G[x+1]=(v*P>>Q)*D,G[x+2]=(h*P>>Q)*D):G[x]=G[x+1]=G[x+2]=0,m-=p,v-=w,h-=E,y-=I,p-=K.r,w-=K.g,E-=K.b,I-=K.a,x=g+((x=l+k)<j?x:j)*o<<2,m+=C+=K.r=G[x],v+=B+=K.g=G[x+1],h+=H+=K.b=G[x+2],y+=L+=K.a=G[x+3],K=K.next,p+=M=O.r,w+=N=O.g,E+=T=O.b,I+=D=O.a,C-=M,B-=N,H-=T,L-=D,O=O.next,d+=o}return t}function i(t,e,n,r,o,f){if(!(isNaN(f)||f<1)){f|=0;var i=a(t,e,n,r,o);i=g(i,e,n,r,o,f),t.getContext("2d").putImageData(i,e,n)}}function g(t,e,a,o,f,i){var g,l,s,x,c,d,b,m,v,h,y,p,w,E,I,C,B,H,L,M,N=t.data,T=i+i+1,D=o-1,R=f-1,G=i+1,A=G*(G+1)/2,W=new u,j=W;for(s=1;s<T;s++)if(j=j.next=new u,s==G)var k=j;j.next=W;var q=null,z=null;b=d=0;var F=n[i],J=r[i];for(l=0;l<f;l++){for(E=I=C=m=v=h=0,y=G*(B=N[d]),p=G*(H=N[d+1]),w=G*(L=N[d+2]),m+=A*B,v+=A*H,h+=A*L,j=W,s=0;s<G;s++)j.r=B,j.g=H,j.b=L,j=j.next;for(s=1;s<G;s++)x=d+((D<s?D:s)<<2),m+=(j.r=B=N[x])*(M=G-s),v+=(j.g=H=N[x+1])*M,h+=(j.b=L=N[x+2])*M,E+=B,I+=H,C+=L,j=j.next;for(q=W,z=k,g=0;g<o;g++)N[d]=m*F>>J,N[d+1]=v*F>>J,N[d+2]=h*F>>J,m-=y,v-=p,h-=w,y-=q.r,p-=q.g,w-=q.b,x=b+((x=g+i+1)<D?x:D)<<2,m+=E+=q.r=N[x],v+=I+=q.g=N[x+1],h+=C+=q.b=N[x+2],q=q.next,y+=B=z.r,p+=H=z.g,w+=L=z.b,E-=B,I-=H,C-=L,z=z.next,d+=4;b+=o}for(g=0;g<o;g++){for(I=C=E=v=h=m=0,y=G*(B=N[d=g<<2]),p=G*(H=N[d+1]),w=G*(L=N[d+2]),m+=A*B,v+=A*H,h+=A*L,j=W,s=0;s<G;s++)j.r=B,j.g=H,j.b=L,j=j.next;for(c=o,s=1;s<=i;s++)d=c+g<<2,m+=(j.r=B=N[d])*(M=G-s),v+=(j.g=H=N[d+1])*M,h+=(j.b=L=N[d+2])*M,E+=B,I+=H,C+=L,j=j.next,s<R&&(c+=o);for(d=g,q=W,z=k,l=0;l<f;l++)N[x=d<<2]=m*F>>J,N[x+1]=v*F>>J,N[x+2]=h*F>>J,m-=y,v-=p,h-=w,y-=q.r,p-=q.g,w-=q.b,x=g+((x=l+G)<R?x:R)*o<<2,m+=E+=q.r=N[x],v+=I+=q.g=N[x+1],h+=C+=q.b=N[x+2],q=q.next,y+=B=z.r,p+=H=z.g,w+=L=z.b,E-=B,I-=H,C-=L,z=z.next,d+=o}return t}function u(){this.r=0,this.g=0,this.b=0,this.a=0,this.next=null}return t={image:function(t,e,n,r){if("string"==typeof t)t=document.getElementById(t);else if("undefined"!=typeof HTMLImageElement&&!t instanceof HTMLImageElement)return;var a=t.naturalWidth,f=t.naturalHeight;if("string"==typeof e)e=document.getElementById(e);else if("undefined"!=typeof HTMLCanvasElement&&!e instanceof HTMLCanvasElement)return;e.style.width=a+"px",e.style.height=f+"px",e.width=a,e.height=f;var g=e.getContext("2d");g.clearRect(0,0,a,f),g.drawImage(t,0,0),isNaN(n)||n<1||(r?o(e,0,0,a,f,n):i(e,0,0,a,f,n))},canvasRGBA:o,canvasRGB:i,imageDataRGBA:f,imageDataRGB:g}}export{n as r};
|