From b5930083bb5e24f0d40a7cb95d2a1d35e1e060d4 Mon Sep 17 00:00:00 2001 From: adrien Date: Sat, 10 May 2025 18:06:25 +0200 Subject: [PATCH] =?UTF-8?q?aper=C3=A7u=20en=20png=20et=20svg?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apercu.php | 63 ---------------------------- apercu.png.php | 84 +++++++++++++++++++++++++++++++++++++ apercu.svg.php | 90 ++++++++++++++++++++++++++++++++++++++++ favicons/favicon(2).zip | Bin 39450 -> 0 bytes favicons/favicon.ico | Bin 15086 -> 0 bytes favicons/favicon.svg | 16 +++---- index.php | 6 +-- 7 files changed, 185 insertions(+), 74 deletions(-) delete mode 100644 apercu.php create mode 100644 apercu.png.php create mode 100644 apercu.svg.php delete mode 100644 favicons/favicon(2).zip delete mode 100644 favicons/favicon.ico diff --git a/apercu.php b/apercu.php deleted file mode 100644 index 8a4d928..0000000 --- a/apercu.php +++ /dev/null @@ -1,63 +0,0 @@ -load($id) || $grille->genere($id); - - for ($y = 0; $y < $lignes; $y++) { - for ($x = 0; $x < $colonnes; $x++) { - if ($grille[$y][$x] == CASE_NOIRE) { - imagefilledrectangle($image, $gauche + $x * $cote, $haut + $y * $cote, $gauche + ($x + 1) * $cote, $haut + ($y + 1) * $cote, $noir); - } - } - } -} - -// Envoyer l'image au navigateur -header('Content-Type: image/png'); -imagepng($image); - -// Libérer la mémoire -imagedestroy($image); -?> \ No newline at end of file diff --git a/apercu.png.php b/apercu.png.php new file mode 100644 index 0000000..cbfa03b --- /dev/null +++ b/apercu.png.php @@ -0,0 +1,84 @@ += 1) { + imagesetthickness($image, $bordure_interieure); + for ($x = $gauche + $cote - ceil($bordure_interieure / 2); $x < $droite; $x += $cote) { + imageline($image, $x, $haut, $x, $bas, $noir); // Lignes verticales + } + for ($y = $haut + $cote - ceil($bordure_interieure / 2); $y < $bas; $y += $cote) { + imageline($image, $gauche, $y, $droite, $y, $noir); // Lignes horizontales + } +} + +// Noicir les cases +if (isset($_GET["grille"])) { + include_once "Grille.php"; + + $grille = new Grille($lignes, $colonnes); + $id = htmlspecialchars($_GET["grille"]); + $grille->load($id) || $grille->genere($id); + + for ($y = 0; $y < $lignes; $y++) { + for ($x = 0; $x < $colonnes; $x++) { + if ($grille[$y][$x] == CASE_NOIRE) { + imagefilledrectangle($image, $gauche + $x * $cote, $haut + $y * $cote, $gauche + ($x + 1) * $cote - 1, $haut + ($y + 1) * $cote - 1, $noir); + } + } + } +} + +// Envoyer l'image au navigateur +header('Content-Type: image/png'); +imagepng($image); + +// Libérer la mémoire +imagedestroy($image); +?> \ No newline at end of file diff --git a/apercu.svg.php b/apercu.svg.php new file mode 100644 index 0000000..5e903ef --- /dev/null +++ b/apercu.svg.php @@ -0,0 +1,90 @@ +formatOutput = true; + +// Élément SVG principal +$svg = $doc->createElement('svg'); +$svg->setAttribute('xmlns', 'http://www.w3.org/2000/svg'); +$svg->setAttribute('viewBox', -$marge . " " . -$marge . " " . ($width + $bordure) . " " . ($height + $bordure)); +$svg->setAttribute('width', $width + $bordure); +$svg->setAttribute('height', $height + $bordure); +$doc->appendChild($svg); + +// Rectangle arrondi +$rect = $doc->createElement('rect'); +$rect->setAttribute('x', 0); +$rect->setAttribute('y', 0); +$rect->setAttribute('width', $width); +$rect->setAttribute('height', $height); +$rect->setAttribute('rx', $rectRadius); +$rect->setAttribute('ry', $rectRadius); +$rect->setAttribute('fill', 'white'); +$rect->setAttribute('stroke', 'black'); +$rect->setAttribute('stroke-width', $bordure); +$svg->appendChild($rect); + +// Lignes verticales +for ($i = 1; $i < $colonnes; $i++) { + $x = $i * $cote; + $line = $doc->createElement('line'); + $line->setAttribute('x1', $x); + $line->setAttribute('y1', $marge); + $line->setAttribute('x2', $x); + $line->setAttribute('y2', $height - $marge); + $line->setAttribute('stroke', '#000'); + $line->setAttribute('stroke-width', 1); + $svg->appendChild($line); +} + +// Lignes horizontales +for ($i = 1; $i < $lignes; $i++) { + $y = $i * $cote; + $line = $doc->createElement('line'); + $line->setAttribute('x1', $marge); + $line->setAttribute('y1', $y); + $line->setAttribute('x2', $width - $marge); + $line->setAttribute('y2', $y); + $line->setAttribute('stroke', '#000'); + $line->setAttribute('stroke-width', 1); + $svg->appendChild($line); +} + +// Noicir les cases +if (isset($_GET["grille"])) { + include_once "Grille.php"; + + $grille = new Grille($lignes, $colonnes); + $id = htmlspecialchars($_GET["grille"]); + $grille->load($id) || $grille->genere($id); + + for ($y = 0; $y < $lignes; $y++) { + for ($x = 0; $x < $colonnes; $x++) { + if ($grille[$y][$x] == CASE_NOIRE) { + $rect = $doc->createElement('rect'); + $rect->setAttribute('x', $x * $cote); + $rect->setAttribute('y', $y * $cote); + $rect->setAttribute('width', $cote); + $rect->setAttribute('height', $cote); + $rect->setAttribute('fill', 'black'); + $svg->appendChild($rect); + } + } + } +} + +header('Content-Type: image/svg+xml'); +echo $doc->saveXML(); \ No newline at end of file diff --git a/favicons/favicon(2).zip b/favicons/favicon(2).zip deleted file mode 100644 index 86e599d7fd0ab97de846a305678c7803aae0166b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39450 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 IfA$pq1)S(3^Z)<= diff --git a/favicons/favicon.svg b/favicons/favicon.svg index 241637d..49bc6c8 100644 --- a/favicons/favicon.svg +++ b/favicons/favicon.svg @@ -21,8 +21,8 @@ inkscape:pagecheckerboard="0" inkscape:deskcolor="#505050" inkscape:zoom="8.3124997" - inkscape:cx="28.57143" - inkscape:cy="30.977445" + inkscape:cx="32" + inkscape:cy="32" inkscape:window-width="1536" inkscape:window-height="793" inkscape:window-x="0" @@ -32,19 +32,19 @@ + style="stroke-width:1" /> diff --git a/index.php b/index.php index 0360753..0d9faed 100644 --- a/index.php +++ b/index.php @@ -101,15 +101,15 @@ if ($grille_valide) { - - + + - +