imension:f}}
function V(a){var b=sa(a);if(!b)return null;for(let e of b){b=pa(a,e);var c=b.matrix;if(null==c)c=null;else{var d=L(c);if(d)c=d;else{for(d=0;d<c.width;d++)for(let f=d+1;f<c.height;f++)c.get(d,f)!==c.get(f,d)&&(c.set(d,f,!c.get(d,f)),c.set(f,d,!c.get(f,d)));c=L(c)}}if(c)return{binaryData:c.bytes,data:c.text,chunks:c.chunks,version:c.version,location:{topRightCorner:b.mappingFunction(e.dimension,0),topLeftCorner:b.mappingFunction(0,0),bottomRightCorner:b.mappingFunction(e.dimension,e.dimension),bottomLeftCorner:b.mappingFunction(0,
e.dimension),topRightFinderPattern:e.topRight,topLeftFinderPattern:e.topLeft,bottomLeftFinderPattern:e.bottomLeft,bottomRightAlignmentPattern:e.alignmentPattern},matrix:b.matrix}}return null}let ta={inversionAttempts:"attemptBoth",greyScaleWeights:{red:.2126,green:.7152,blue:.0722,useIntegerApproximation:!1},canOverwriteImage:!0};function W(a,b){Object.keys(b).forEach(c=>{a[c]=b[c]})}
function X(a,b,c,d={}){let e=Object.create(null);W(e,ta);W(e,d);d="onlyInvert"===e.inversionAttempts||"invertFirst"===e.inversionAttempts;var f="attemptBoth"===e.inversionAttempts||d;var g=e.greyScaleWeights,h=e.canOverwriteImage,k=b*c;if(a.length!==4*k)throw Error("Malformed data passed to binarizer.");var m=0;if(h){var l=new Uint8ClampedArray(a.buffer,m,k);m+=k}l=new A(b,c,l);if(g.useIntegerApproximation)for(var n=0;n<c;n++)for(var q=0;q<b;q++){var r=4*(n*b+q);l.set(q,n,g.red*a[r]+g.green*a[r+1]+
g.blue*a[r+2]+128>>8)}else for(n=0;n<c;n++)for(q=0;q<b;q++)r=4*(n*b+q),l.set(q,n,g.red*a[r]+g.green*a[r+1]+g.blue*a[r+2]);g=Math.ceil(b/8);n=Math.ceil(c/8);q=g*n;if(h){var u=new Uint8ClampedArray(a.buffer,m,q);m+=q}u=new A(g,n,u);for(q=0;q<n;q++)for(r=0;r<g;r++){var p=Infinity,t=0;for(var v=0;8>v;v++)for(let w=0;8>w;w++){let aa=l.get(8*r+w,8*q+v);p=Math.min(p,aa);t=Math.max(t,aa)}v=(p+t)/2;v=Math.min(255,1.11*v);24>=t-p&&(v=p/2,0<q&&0<r&&(t=(u.get(r,q-1)+2*u.get(r-1,q)+u.get(r-1,q-1))/4,p<t&&(v=t)));
u.set(r,q,v)}h?(q=new Uint8ClampedArray(a.buffer,m,k),m+=k,q=new x(q,b)):q=x.createEmpty(b,c);r=null;f&&(h?(a=new Uint8ClampedArray(a.buffer,m,k),r=new x(a,b)):r=x.createEmpty(b,c));for(b=0;b<n;b++)for(a=0;a<g;a++){c=g-3;c=2>a?2:a>c?c:a;h=n-3;h=2>b?2:b>h?h:b;k=0;for(m=-2;2>=m;m++)for(p=-2;2>=p;p++)k+=u.get(c+m,h+p);c=k/25;for(h=0;8>h;h++)for(k=0;8>k;k++)m=8*a+h,p=8*b+k,t=l.get(m,p),q.set(m,p,t<=c),f&&r.set(m,p,!(t<=c))}f=f?{binarized:q,inverted:r}:{binarized:q};let {binarized:z,inverted:y}=f;(f=V(d?
y:z))||"attemptBoth"!==e.inversionAttempts&&"invertFirst"!==e.inversionAttempts||(f=V(d?z:y));return f}X.default=X;let Y="dontInvert",Z={red:77,green:150,blue:29,useIntegerApproximation:!0};
self.onmessage=a=>{let b=a.data.id,c=a.data.data;switch(a.data.type){case "decode":(a=X(c.data,c.width,c.height,{inversionAttempts:Y,greyScaleWeights:Z}))?self.postMessage({id:b,type:"qrResult",data:a.data,cornerPoints:[a.location.topLeftCorner,a.location.topRightCorner,a.location.bottomRightCorner,a.location.bottomLeftCorner]}):self.postMessage({id:b,type:"qrResult",data:null});break;case "grayscaleWeights":Z.red=c.red;Z.green=c.green;Z.blue=c.blue;Z.useIntegerApproximation=c.useIntegerApproximation;
break;case "inversionMode":switch(c){case "original":Y="dontInvert";break;case "invert":Y="onlyInvert";break;case "both":Y="attemptBoth";break;default:throw Error("Invalid inversion mode");}break;case "close":self.close()}}
`]),{type:"application/javascript"})),ci=Object.freeze(Object.defineProperty({__proto__:null,createWorker:ai},Symbol.toStringTag,{value:"Module"}));</script>
<style rel="stylesheet" crossorigin>*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#1a1a2e;--sf:#16213e;--in:#0f3460;--tx:#e8e8e8;--tm:#a0a0b0;--ac:#e94560;--ah:#ff6b81;--ok:#4ecca3;--wn:#f0c040;--er:#e94560;--bd:#2a2a4a;--r:8px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--tx);min-height:100vh;line-height:1.5}.ct{max-width:480px;margin:0 auto;padding:24px 16px}h1{font-size:1.5rem;margin-bottom:8px}h2{font-size:1.2rem;margin-bottom:12px}p{margin-bottom:8px}button{background:var(--ac);color:var(--tx);border:none;padding:10px 20px;border-radius:var(--r);cursor:pointer;font-size:1rem;width:100%;margin-bottom:8px}button:hover{background:var(--ah)}button:disabled{opacity:.5;cursor:not-allowed}.btn-s{background:var(--sf);border:1px solid var(--bd)}.btn-ok{background:var(--ok)}.btn-er{background:var(--er)}input,textarea,select{background:var(--in);color:var(--tx);border:1px solid var(--bd);padding:10px 12px;border-radius:var(--r);font-size:1rem;width:100%;margin-bottom:12px}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--ac)}label{display:block;font-size:.85rem;color:var(--tm);margin-bottom:4px}.card{background:var(--sf);border:1px solid var(--bd);border-radius:var(--r);padding:16px;margin-bottom:12px}.ba{font-size:1.8rem;font-weight:700}.bl{font-size:.85rem;color:var(--tm)}.sm{font-size:.85rem}.xs{font-size:.75rem}.err{color:var(--er);font-size:.85rem}.ok{color:var(--ok);font-size:.85rem}.wrn{color:var(--wn);font-size:.85rem}.mt{color:var(--tm)}.gc{color:var(--ok)}.g2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mb{margin-bottom:12px}.mt1{margin-top:8px}.mt2{margin-top:12px}.info{padding:8px;background:var(--in);border-radius:var(--r)}.fx{display:flex;gap:8px}nav{display:flex;gap:4px;margin-bottom:16px;overflow-x:auto}nav a{color:var(--tm);text-decoration:none;padding:8px 12px;border-radius:var(--r);font-size:.85rem;white-space:nowrap}nav a.active{background:var(--sf);color:var(--tx)}nav a:hover{color:var(--tx)}.hidden{display:none}[dir=rtl],[dir=rtl] input,[dir=rtl] textarea,[dir=rtl] select{text-align:right}[dir=rtl] nav{flex-direction:row-reverse}[dir=rtl] .fx{flex-direction:row-reverse}</style>
</head>
<body>
<div id="app"></div>
</body>
</html>
Sort: Trending