Path: C:\
<?php
include 'vendor/autoload.php';
use BaconQrCode\Renderer\ImageRenderer;
use BaconQrCode\Renderer\Image\SvgImageBackEnd;
use BaconQrCode\Renderer\RendererStyle\RendererStyle;
use BaconQrCode\Writer;
$renderer = new ImageRenderer(
new RendererStyle(160),
new SvgImageBackEnd()
);
$writer = new Writer($renderer);
if (isset($_POST['texto'])) {$url=$_POST['texto'];} else {$url='Vazio';}
if (isset($_POST['arq'])) {$nome_arq=$_POST['arq'];} else {$nome_arq='Vazio';}
if (isset($_POST['funciona'])) {$nome_func=$_POST['funciona'];} else {$nome_func='Vazio';}
$name = $nome_arq;
$split_name = explode(" ",$name);
if(count($split_name) > 2){
for($i=1;(count($split_name) - 1) > $i; $i++){
if(strlen($split_name[$i]) > 3){
$split_name[$i] = substr($split_name[$i],0,1).".";
}
}
}
$final= implode(" ",$split_name);
$qrcode = $writer->writeString($url);
echo '
<script src="./js/html2canvas.js"></script>
<script type="text/javascript">
document.getElementById("botao").click();
function doCapture() {
window.scrollTo(0, 0);
html2canvas(document.getElementById("cracha")).then(function (canvas) {
// Create an AJAX object
var ajax = new XMLHttpRequest();
// Setting method, server file name, and asynchronous
ajax.open("POST", "save-capture.php?arq='.$final.'", true);
// Setting headers for POST method
ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
// Sending image data to server
ajax.send("image=" + canvas.toDataURL("image/png", 0.9));
// Receiving response from server
// This function will be called multiple times
ajax.onreadystatechange = function () {
// Check when the requested is completed
if (this.readyState == 4 && this.status == 200) {
// Displaying response from server
console.log(this.responseText);
// inĂcio da rotina para fazer download do arquivo de imagem
var a = document.createElement("a");
a.download = "_Cracha.png";
a.href = "_Cracha.png";
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
// final da rotina
}
};
});
}
</script>
<style>
#botao {
display: none;
}
.hero-image {
background-image: url("QRHTML_Omega2.png");
height: 350px;
width: 240px;
background-position: center;
background-repeat: no-repeat;
background-size: cover;
position: relative;
}
.hero-qrcode {
text-align: center;
position: absolute;
top: 47%;
left: 50%;
transform: translate(-50%, -50%);
}
.hero-qrtxt {
text-align: center;
position: absolute;
line-height: 95%;
top: 73%;
left: 50%;
transform: translate(-50%, -50%);
}
</style>
<button type="button" id="botao" data-toggle="modal" data-target="#myModal"></button>
<div class="modal fade" id="myModal" role="dialog">
<div class="modal-dialog modal-sm">
<div class="modal-content">
<div class="modal-body" align="center">
<div class="hero-image" id="cracha">
<div class="hero-qrcode">'.$qrcode.'</div>
<div class="hero-qrtxt">
<strong>'.$final.'</strong>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" id="bot" class="btn btn-default" data-dismiss="modal" onclick="doCapture();">Gravar</button>
</div>
</div>
</div>
</div>
';
?>