Exporter png/pdf

master
emeric dallot 4 years ago
parent 56d3ce96e7
commit 7593bc534a

@ -170,3 +170,60 @@ body{
#bouttonadd:active{
box-shadow: 1px 1px 10px black inset, 0 1px 0 rgba( 255, 255, 255, 0.4);
}
#Dribble:hover{
background-color: #b9b7b7;
}
.onoffswitch {
position: relative;
-webkit-user-select:none; -moz-user-select:none; -ms-user-select: none;
}
.onoffswitch-checkbox {
position: absolute;
opacity: 0;
pointer-events: none;
}
.onoffswitch-label {
display: block; overflow: hidden; cursor: pointer;
border: 2px solid #FFFFFF; border-radius: 50px;
}
.onoffswitch-inner {
display: block; width: 200%; margin-left: -100%;
transition: margin 0.4s ease-in 0s;
}
.onoffswitch-inner:before, .onoffswitch-inner:after {
display: block; float: left; width: 50%; height: 41px; padding: 0; line-height: 41px;
font-weight: bold;
box-sizing: border-box;
}
.onoffswitch-inner:before {
content: "DRIBBLER";
padding-left: 12px;
}
.onoffswitch-inner:after {
content: "DRIBBLER";
padding-left: 37px;
background-color: red; color: black;
text-align:left;
}
.onoffswitch-switch {
display: block; width: 30px; margin: 5.5px;
background: #34A7C1;
position: absolute; top: 0; bottom: 0;
border: 2px solid #FFFFFF; border-radius: 50px;
transition: all 0.4s ease-in 0s;
}
.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-inner {
margin-left: 0;
}
.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-switch {
right: 0px;
background-color: #A1A1A1;
}

@ -9,8 +9,11 @@
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<link rel="stylesheet" href="basket.css">
<title>Basket</title>
</head>
<body>
<!-- Navbar -->
<nav class="navbar navbar-expand-lg navbar-light" id="barre_nav">
<div id="titre">
@ -46,9 +49,16 @@
Partager
</a>
<div class="dropdown-menu text-white" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="#">PDF</a>
<a href="#" class="button dropdown-item" id="btn-download">PNG</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">JPG</a>
<script src="https://cdn.jsdelivr.net/npm/three@0.118.3/build/three.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.5.3/jspdf.debug.js" integrity="sha384-NaWTHo/8YCBYJ59830LTz/P4aQZK1sS0SneOgAvhsIl3zBu8r9RevNg5lHCHAuQ/" crossorigin="anonymous"></script>
<button class="dropdown-item" id="download">Download</button>
</div>
</li>
<li class="nav-item">
@ -114,11 +124,14 @@
DÉPLACER
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">
<span data-feather="file-text"></span>
DRIBBLER
</a>
<li class="nav-item" id="Dribble">
<div class="onoffswitch">
<input type="checkbox" name="onoffswitch" class="onoffswitch-checkbox" id="myonoffswitch" tabindex="0" checked>
<label class="onoffswitch-label" for="myonoffswitch">
<span class="onoffswitch-inner"></span>
<span class="onoffswitch-switch"></span>
</label>
</div>
</li>
<li class="nav-item">
<a class="nav-link" href="#">
@ -218,8 +231,11 @@
<!-- Optional JavaScript -->
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="rectest.js"></script>
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js" integrity="sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js" integrity="sha384-w1Q4orYjBQndcko6MimVbzY0tgp4pWB4lZ7lr30WKz0vr/aWKhXdBNmNb5D92v7s" crossorigin="anonymous"></script>
</body>
</html>

@ -10,6 +10,9 @@ canvas.height = lt*0.536;
var ht = canvas.height;
var WIDTH = canvas.width;
var HEIGHT = canvas.height;
var buttonPNG = document.getElementById('btn-download');
var buttonPDF = document.getElementById('btn-downloadpdf');
// drag related variables
var dragok = false;
@ -581,4 +584,56 @@ function retourarriere(){
}
buttonPNG.onclick = function(){
download(canvas, 'Schema.png');
}
function download(canvas, filename) {
var lnk = document.createElement('a'), e;
lnk.download = filename;
lnk.href = canvas.toDataURL("image/png;base64");
/// create a "fake" click-event to trigger the download
if (document.createEvent) {
e = document.createEvent("MouseEvents");
e.initMouseEvent("click", true, true, window,0, 0, 0, 0, 0, false, false, false,false, 0, null);
lnk.dispatchEvent(e);
} else if (lnk.fireEvent) {
lnk.fireEvent("onclick");
}
}
init();
function init() {
var button = document.getElementById( 'download' );
button.addEventListener( 'click', function() {
var imgData = canvas.toDataURL("image/jpeg", 1.0);
var pdf = new jsPDF();
imgData.width=300;
imgData.height=200;
pdf.addImage(imgData, 'JPEG',0 ,0);
pdf.save("download.pdf");
} );
}

@ -24,14 +24,9 @@
margin-bottom: 5px;
}
#menu-ajout{
position: absolute;
}
body{
/*background-color: #353535;*/
background-color: #900000;
overflow-x: hidden;
background-color: #303030;
overflow-x: scroll;
overflow-y: scroll;
}
@ -42,10 +37,6 @@ body{
width: 0;
transition: all .2s ease;
}
#collapseExample{
width: 400px;
height: 100%;
}
.collapse .flex-column {
overflow: auto;
@ -56,34 +47,15 @@ body{
width: 100%;
}
#derouler_action{
margin-bottom: 90%;
}
#colonne_gauche{
width: fill;
height: fill;
background-color: #353535;
}
#colonne_droite{
width: auto;
height: auto;
background-color: #993535;
}
.feather {
width: 16px;
height: 16px;
vertical-align: text-bottom;
}
/*
* Sidebar
*/
.sidebar {
width: 20%;
margin-top: 56px;
position: fixed;
top: 0;
@ -92,6 +64,7 @@ body{
z-index: 100; /* Behind the navbar */
padding: 48px 0 0; /* Height of navbar */
box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1);
background-color: #b9b7b7;
}
@media (max-width: 767.98px) {
@ -158,3 +131,42 @@ body{
height: 150px;
width: 80%;
}
#sidebarMenu{
min-width: 50px;
}
#terrain{
margin-top: 2%;
margin-left: 5%;
width: 75%;
height: auto;
}
#demiTerrainDroit{
margin-top: 2%;
margin-left: 20%;
width: 75%;
height: auto;
}
#demiTerrainGauche{
margin-top: 2%;
margin-left: 20%;
width: 75%;
height: auto;
/*transform: rotate(90deg);*/
}
.boutons {
margin-top: 1%;
}
#bouttonadd: hover {
background-color : "red";
border-color: "yellow";
}
#bouttonadd:active{
box-shadow: 1px 1px 10px black inset, 0 1px 0 rgba( 255, 255, 255, 0.4);
}

@ -1,4 +1,3 @@
<!-- Ambroise GABERT -->
<!DOCTYPE html>
<html lang="fr">
<head>
@ -15,7 +14,7 @@
<!-- Navbar -->
<nav class="navbar navbar-expand-lg navbar-light" id="barre_nav">
<div id="titre">
<img id="image_ballon" src="image_ballon.jpg" width="30" height="30" alt="">
<img id="image_ballon" src="ballon.png" width="30" height="30" alt="">
<a class="navbar-brand text-white" href="#">BASKET</a>
</div>
<button class="navbar-toggler bg-light" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
@ -35,11 +34,11 @@
Nouvelle page
</a>
<div class="dropdown-menu" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="#">HAUT TERRAIN</a>
<a class="dropdown-item" id="demo" href="#" onclick="afficherDemiTerrainDroit()">TERRAIN DROIT</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item " href="#">BAS TERRAIN</a>
<a class="dropdown-item " href="#" onclick="afficherDemiTerrainGauche()">TERRAIN GAUCHE</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item " href="#">FULL TERRAIN</a>
<a class="dropdown-item " href="#" onclick="afficherFullTerrain()" >FULL TERRAIN</a>
</div>
</li>
<li class="nav-item dropdown">
@ -62,7 +61,7 @@
<div class="container-fluid">
<div class="row">
<nav id="sidebarMenu" class="col-md-3 col-lg-2 d-md-block bg-light sidebar collapse">
<nav id="sidebarMenu" class="col-md-3 col-lg-2 d-md-block sidebar collapse">
<div class="row list-group list-group">
<div >
<div class="list-group list-group-horizontal" id="bouton" role="tablist">
@ -76,7 +75,7 @@
<div class="tab-content" id="nav-tabContent">
<div class="tab-pane fade show active" id="list-home" role="tabpanel" aria-labelledby="list-home-list">
<div class="sidebar-sticky pt-3">
<h6 class="sidebar-heading d-flex justify-content-between align-items-center px-3 mt-4 mb-1 text-muted">
<h6 class="sidebar-heading d-flex justify-content-between align-items-center px-3 mt-4 mb-1 text-muted font-weight-bold">
<span>AJOUTER JOUEUR</span>
<a class="d-flex align-items-center text-muted" href="#" aria-label="Add a new report">
<span data-feather="plus-circle"></span>
@ -84,19 +83,19 @@
</h6>
<ul class="nav flex-column" id="ul">
<li class="nav-item">
<a class="nav-link" href="#">
<a class="nav-link" onclick="ajouterjoueur()" href="#">
<span data-feather="file"></span>
ATTAQUANT
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">
<li class="nav-item" id="bouttonadd">
<a class="nav-link " onclick="ajouteradversaire()" href="#">
<span data-feather="shopping-cart"></span>
DEFENSEUR
DÉFENSEUR
</a>
</ul>
<h6 class="sidebar-heading d-flex justify-content-between align-items-center px-3 mt-4 mb-1 text-muted">
<h6 class="sidebar-heading d-flex justify-content-between align-items-center px-3 mt-4 mb-1 text-muted font-weight-bold">
<span>ACTIONS</span>
<a class="d-flex align-items-center text-muted" href="#" aria-label="Add a new report">
<span data-feather="plus-circle"></span>
@ -104,7 +103,7 @@
</h6>
<ul class="nav flex-column mb-2" id="ul">
<li class="nav-item">
<a class="nav-link" href="#">
<a class="nav-link" onclick="triggerfairepasse()"href="#">
<span data-feather="file-text"></span>
PASSE
</a>
@ -112,19 +111,19 @@
<li class="nav-item">
<a class="nav-link" href="#">
<span data-feather="file-text"></span>
DEPLACER
DÉPLACER
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">
<span data-feather="file-text"></span>
DRIBLER
DRIBBLER
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">
<span data-feather="file-text"></span>
ECRAN
ÉCRAN
</a>
</li>
<li class="nav-item">
@ -133,6 +132,18 @@
TIRER
</a>
</li>
<li class="nav-item">
<a class="nav-link" onclick="retourarriere()" href="#">
<span data-feather="file-text"></span>
RETOUR ARRIERE
</a>
</li>
<li class="nav-item">
<a class="nav-link" onclick="triggerdonnerlaballe()" href="#">
<span data-feather="file-text"></span>
DONNER LA BALLE
</a>
</li>
</ul>
</div>
</div>
@ -158,11 +169,55 @@
</div>
</div>
</nav>
<div class="boutons">
<button type="button" class="btn btn-warning">
<img src="flèche_gauche.png" height="30">
</button>
<button type="button" class="btn btn-warning">
<img src="flèche_droite.png" height="30">
</button>
</div>
<div id="divTerrains">
<canvas id="terrain" style="display:block;"></canvas>
<script src ="Terrains/Horizontal/entier.js"></script>
<canvas id="demiTerrainDroit" style="display:none;"></canvas>
<script src ="Terrains/Horizontal/demiDroit.js"></script>
<canvas id="demiTerrainGauche" style="display:none;"></canvas>
<script src ="Terrains/Horizontal/demiGauche.js"></script>
</div>
<script>
function afficherFullTerrain() {
document.getElementById("terrain").style.display = "block";
document.getElementById("demiTerrainDroit").style.display = "none";
document.getElementById("demiTerrainGauche").style.display = "none";
}
function afficherDemiTerrainDroit() {
document.getElementById("terrain").style.display = "none";
document.getElementById("demiTerrainDroit").style.display = "block";
document.getElementById("demiTerrainGauche").style.display = "none";
}
function afficherDemiTerrainGauche() {
document.getElementById("terrain").style.display = "none";
document.getElementById("demiTerrainDroit").style.display = "none";
document.getElementById("demiTerrainGauche").style.display = "block";
}
</script>
<button type="button" class="btn btn-warning fixed-bottom font-weight-bold">+</button>
<!-- Optional JavaScript -->
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="rectest.js"></script>
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js" integrity="sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js" integrity="sha384-w1Q4orYjBQndcko6MimVbzY0tgp4pWB4lZ7lr30WKz0vr/aWKhXdBNmNb5D92v7s" crossorigin="anonymous"></script>

Loading…
Cancel
Save