SVG mit PHP generieren

Zur Navigation springen Zur Suche springen
Der Trick besteht darin, dass man einen passenden Header in die Datei schreibt.

Code der aufrufenden Datei

Mittels Formular wird der Inhalt des SVG-Images an eine Datei übermittelt, die diese auswertet.

Das Ersetzen von Doppelhochkommata ist dann erforderlich, wenn man das SVG-Statement mit Doppelhochkomma erstellt hat. Idee: in den Code einfache Hochkomma schreiben?
<form action = "blatt.php" method = "post" target="_blank">
<p><input name="svg" value="<?php echo str_replace('"',"'",$svg); ?>" type="hidden"></p>
<p><input type="submit" value="SVG herunterladen" > speichern unter nur HTML, Endung auf svg ändern</p>
</form>

Code der Zieldatei

Aufgrund der „falschen“ Erweiterung muss die Datei umbenannt werden. Die Zieldatei muss die Endung php haben, sonst wird der Code nicht ausgeführt.
<?php
echo '<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
';
if (isset($_POST["svg"])) echo $_POST["svg"]; else echo '</svg>';
?>