Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

André Mendonça E Silva

[Resolvido] Leitor QRCODE

Recommended Posts

var gCtx = null;
var gCanvas = null;
var imageData = null;
var c=0;
var stype=0;

var camhtml='  	<object  id="iembedflash" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="320" height="240"> '+
 		'<param name="movie" value="camcanvas.swf" />'+
 		'<param name="quality" value="high" />'+
	'<param name="allowScriptAccess" value="always" />'+
 		'<embed  allowScriptAccess="always"  id="embedflash" src="camcanvas.swf" quality="high" width="320" height="240" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" mayscript="true"  />'+
   '</object>';
var imghtml='<div id="qrfile"><canvas id="out-canvas" width="320" height="240"></canvas>'+
   '<div id="imghelp">drag and drop a QRCode here'+
'<br>or select a file'+
'<input type="file" onchange="handleFiles(this.files)"/>'+
'</div>'+
'</div>';

function dragenter(e) {
 e.stopPropagation();
 e.preventDefault();
}

function dragover(e) {
 e.stopPropagation();
 e.preventDefault();
}
function drop(e) {
 e.stopPropagation();
 e.preventDefault();

 var dt = e.dataTransfer;
 var files = dt.files;
 if(files.length>0)
 {
handleFiles(files);
 }
 else
 if(dt.getData('URL'))
 {
qrcode.decode(dt.getData('URL'));
 }
}

function handleFiles(f)
{
var o=[];

for(var i =0;i<f.length;i++)
{
       var reader = new FileReader();
       reader.onload = (function(theFile) {
       return function(e) {
           gCtx.clearRect(0, 0, gCanvas.width, gCanvas.height);

		qrcode.decode(e.target.result);
       };
       })(f[i]);
       reader.readAsDataURL(f[i]);	
   }
}

function initCanvas(ww,hh)
{
   gCanvas = document.getElementById("qr-canvas");
   var w = ww;
   var h = hh;
   gCanvas.style.width = w + "px";
   gCanvas.style.height = h + "px";
   gCanvas.width = w;
   gCanvas.height = h;
   gCtx = gCanvas.getContext("2d");
   gCtx.clearRect(0, 0, w, h);
   imageData = gCtx.getImageData( 0,0,320,240);
}

function passLine(stringPixels) { 

   var coll = stringPixels.split("-");

   for(var i=0;i<320;i++) { 
       var intVal = parseInt(coll[i]);
       r = (intVal >> 16) & 0xff;
       g = (intVal >> 8) & 0xff;
       b = (intVal ) & 0xff;
       imageData.data[c+0]=r;
       imageData.data[c+1]=g;
       imageData.data[c+2]=b;
       imageData.data[c+3]=255;
       c+=4;
   } 

   if(c>=320*240*4) { 
       c=0;
       gCtx.putImageData(imageData, 0,0);
       try{
           qrcode.decode();
       }
       catch(e){       
           console.log(e);
           setTimeout(captureToCanvas, 500);
       };
   } 
} 

function captureToCanvas() {
   flash = document.getElementById("embedflash");
   if(!flash)
       return;
   flash.ccCapture();
}

function htmlEntities(str) {
   return String(str).replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"');
}

function read(a)
{
   var html="<br>";
   if(a.indexOf("http://") === 0)
       html+="<a target='_blank' href='"+a+"'>"+a+"</a><br>";
   html+="<b>"+htmlEntities(a)+"</b><br><br>";
   document.getElementById("result").innerHTML=html;
}	

function isCanvasSupported(){
 var elem = document.createElement('canvas');
 return !!(elem.getContext && elem.getContext('2d'));
}


function load()
{
if(isCanvasSupported() && window.File && window.FileReader)
{
	initCanvas(800,600);
	qrcode.callback = read;
	document.getElementById("mainbody").style.display="inline";
}
else
{
	document.getElementById("mainbody").style.display="inline";
	document.getElementById("mainbody").innerHTML='<p id="mp1">QR code scanner for HTML5 capable browsers</p><br>'+
       '<br><p id="mp2">sorry your browser is not supported</p><br><br>'+
       '<p id="mp1">try <a href="http://www.mozilla.com/firefox"><img src="firefox.png"/></a> or <a href="http://chrome.google.com"><img src="chrome_logo.gif"/></a></p>';
}
}

function setwebcam()
{
document.getElementById("result").innerHTML="- scanning -";
   if(stype==1)
   {
       setTimeout(captureToCanvas, 500);    
       return;
   }
   document.getElementById("outdiv").innerHTML = camhtml;
   document.getElementById("qrimg").src="qrimg2.png";
   document.getElementById("webcamimg").src="webcam.png";
   stype=1;
   setTimeout(captureToCanvas, 500);
}
function setimg()
{
document.getElementById("result").innerHTML="";
   if(stype==2)
       return;
   document.getElementById("outdiv").innerHTML = imghtml;
   document.getElementById("qrimg").src="qrimg.png";
   document.getElementById("webcamimg").src="webcam2.png";
   var qrfile = document.getElementById("qrfile");
   qrfile.addEventListener("dragenter", dragenter, false);  
   qrfile.addEventListener("dragover", dragover, false);  
   qrfile.addEventListener("drop", drop, false);
   stype=2;
}

 

A página está aqui: http://webqr.com

Ele apenas exibe no final da página o que está no QRCODE, mas ele não redireciona...alguém poderia me ajudar por favor?

o html dá pagina está aqui

<body onload="load()">
<div id="main">

<div id="header">
<table border="0" width="100%">
<tr><td width="150px" align="center">
<a href="http://www.webqr.com"><img src="logo2.gif" alt="Web QR"/></a>
</td>
<td align="center" valign="bottom">
<div style="position:relative;top:-10px;left:-160px;"><g:plusone size="medium"></g:plusone></div>
<img src="title2.gif" alt="QR Code scanner" />
<ul>
<li><a href="index.html">Home</a></li>
<li><a href="create.html">Create</a></li>
<li><a href="faq.html">FAQ</a></li>
<li><a href="about.html">About</a></li>

<li style="border: medium none;"><a href="contact.html">Contact</a></li>
</ul>
</td>
<td align="center" width="150px">
<img src="webqr.png" alt="Web QR"/>
</td>
</tr>
</table>
</div>
<div id="mainbody">
<p id="mp1">
QR code scanner for HTML5 capable browsers
</p>
<table border="0" width="100%">
<tr><td align="right" valign="top"  width="30%">
<p class="helptext" >scanning with webcam →</p>

</td>
<td valign="top" align="center">
<img class="selector" id="webcamimg" src="webcam2.png" onclick="setwebcam()" style="margin-right:54px;" />
<img class="selector" id="qrimg" src="qrimg2.png" onclick="setimg()"/>
<div id="outdiv">
<p class="helptext2" >select webcam or image scanning</p>
</div></td>
<td align="left" valign="top" width="30%">
<p  class="helptext" >← scan from image</p>
</td></tr>
<tr><td colspan="3" align="center">
<img src="down.png"/>
</tr></td>
<tr><td colspan="3" align="center">

<div id="result"></div>
</tr></td>
</table>
</div> 
<div id="footer">
<br>


<h5 align="center">Copyright © 2011 <a target="_blank" href="http://www.lazarsoft.info">Lazar Laszlo</a></h5>
</div>
</div>

<canvas id="qr-canvas" width="800" height="600"></canvas>
</body>

</html>

Desculpa por alguma coisa,pois eu sou novo por aqui...

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.