|
|
|
!function(){"use strict";var r=jQuery,t=function(r,t,e,n){var o=y(e,t);o.addData(r),o.make(),n=n||0;var i=o.getModuleCount(),a=o.getModuleCount()+2*n,u=function(r,t){return r-=n,t-=n,0>r||r>=i||0>t||t>=i?!1:o.isDark(r,t)},f=function(r,t,e,n){var o=this.isDark,i=1/a;this.isDark=function(a,u){var f=u*i,l=a*i,c=f+i,g=l+i;return o(a,u)&&(r>c||f>e||t>g||l>n)}};this.text=r,this.level=t,this.version=e,this.moduleCount=a,this.isDark=u,this.addBlank=f},e=function(){var r=document.createElement("canvas");return!(!r.getContext||!r.getContext("2d"))}(),n="[object Opera]"!==Object.prototype.toString.call(window.opera),o=function(r,e,n,o,i){n=Math.max(1,n||1),o=Math.min(40,o||40);for(var a=n;o>=a;a+=1)try{return new t(r,e,a,i)}catch(u){}},i=function(t,e,n){var o=n.size,i="bold "+n.mSize*o+"px "+n.fontname,a=r("<canvas/>")[0].getContext("2d");a.font=i;var u=a.measureText(n.label).width,f=n.mSize,l=u/o,c=(1-l)*n.mPosX,g=(1-f)*n.mPosY,s=c+l,h=g+f,v=.01;1===n.mode?t.addBlank(0,g-v,o,h+v):t.addBlank(c-v,g-v,s+v,h+v),e.fillStyle=n.fontcolor,e.font=i,e.fillText(n.label,c*o,g*o+.75*n.mSize*o)},a=function(r,t,e){var n=e.size,o=e.image.naturalWidth||1,i=e.image.naturalHeight||1,a=e.mSize,u=a*o/i,f=(1-u)*e.mPosX,l=(1-a)*e.mPosY,c=f+u,g=l+a,s=.01;3===e.mode?r.addBlank(0,l-s,n,g+s):r.addBlank(f-s,l-s,c+s,g+s),t.drawImage(e.image,f*n,l*n,u*n,a*n)},u=function(t,e,n){r(n.background).is("img")?e.drawImage(n.background,0,0,n.size,n.size):n.background&&(e.fillStyle=n.background,e.fillRect(n.left,n.top,n.size,n.size));var o=n.mode;1===o||2===o?i(t,e,n):(3===o||4===o)&&a(t,e,n)},f=function(r,t,e,n,o,i,a,u){r.isDark(a,u)&&t.rect(n,o,i,i)},l=function(r,t,e,n,o,i,a,u,f,l){a?r.moveTo(t+i,e):r.moveTo(t,e),u?(r.lineTo(n-i,e),r.arcTo(n,e,n,o,i)):r.lineTo(n,e),f?(r.lineTo(n,o-i),r.arcTo(n,o,t,o,i)):r.lineTo(n,o),l?(r.lineTo(t+i,o),r.arcTo(t,o,t,e,i)):r.lineTo(t,o),a?(r.lineTo(t,e+i),r.arcTo(t,e,n,e,i)):r.lineTo(t,e)},c=function(r,t,e,n,o,i,a,u,f,l){a&&(r.moveTo(t+i,e),r.lineTo(t,e),r.lineTo(t,e+i),r.arcTo(t,e,t+i,e,i)),u&&(r.moveTo(n-i,e),r.lineTo(n,e),r.lineTo(n,e+i),r.arcTo(n,e,n-i,e,i)),f&&(r.moveTo(n-i,o),r.lineTo(n,o),r.lineTo(n,o-i),r.arcTo(n,o,n-i,o,i)),l&&(r.moveTo(t+i,o),r.lineTo(t,o),r.lineTo(t,o-i),r.arcTo(t,o,t+i,o,i))},g=function(r,t,e,n,o,i,a,u){var f=r.isDark,g=n+i,s=o+i,h=e.radius*i,v=a-1,d=a+1,w=u-1,m=u+1,T=f(a,u),y=f(v,w),p=f(v,u),B=f(v,m),E=f(a,m),k=f(d,m),A=f(d,u),M=f(d,w),D=f(a,w);T?l(t,n,o,g,s,h,!p&&!D,!p&&!E,!A&&!E,!A&&!D):c(t,n,o,g,s,h,p&&D&&y,p&&E&&B,A&&E&&k,A&&D&&M)},s=function(t,e,o){var i,a,u=t.moduleCount,l=o.size/u,c=f;for(n&&o.radius>0&&o.radius<=.5&&(c=g),e.beginPath(),i=0;u>i;i+=1)for(a=0;u>a;a+=1){var s=o.left+a*l,h=o.top+i*l,v=l;c(t,e,o,s,h,v,i,a)}if(r(o.fill).is("img")){e.strokeStyle="rgba(0,0,0,0.5)",e.lineWidth=2,e.stroke();var d=e.globalCompositeOperation;e.globalCompositeOperation="destination-out",e.fill(),e.globalCompositeOperation=d,e.clip(),e.drawImage(o.fill,0,0,o.size,o.size),e.restore()}else e.fillStyle=o.fill,e.fill()},h=function(t,e){var n=o(e.text,e.ecLevel,e.minVersion,e.maxVersion,e.quiet);if(!n)return null;var i=r(t).data("qrcode",n),a=i[0].getContext("2d");return u(n,a,e),s(n,a,e),i},v=function(t){var e=r("<canvas/>").attr("width",t.size).attr("height",t.size);return h(e,t)},d=function(t){return r("<img/>").attr("src",v(t)[0].toDataURL("image/png"))},w=function(t){var e=o(t.text,t.ecLevel,t.minVersion,t.maxVersion,t.quiet);if(!e)return null;var n,i,a=t.size,u=t.background,f=Math.floor,l=e.moduleCount,c=f(a/l),g=f(.5*(a-c*l)),s={position:"relative",left:0,top:0,padding:0,margin:0,width:a,height:a},h={position:"absolute",padding:0,margin:0,width:c,height:c,"background-color":t.fill},v=r("<div/>").data("qrcode",e).css(s);for(u&&v.css("background-color",u),n=0;l>n;n+=1)for(i=0;l>i;i+=1)e.isDark(n,i)&&r("<div/>").css(h).css({left:g+i*c,top:g+n*c}).appendTo(v);return v},m=function(r){return e&&"canvas"===r.render?v(r):e&&"image"===r.render?d(r):w(r)},T={render:"canvas",minVersion:1,maxVersion:40,ecLevel:"L",left:0,top:0,size:200,fill:"#000",background:null,text:"no text",radius:0,quiet:0,mode:0,mSize:.1,mPosX:.5,mP
|