Benutzer:AleXXw/SVG-AutoBot

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Basisdatei[Bearbeiten | Quelltext bearbeiten]

Das Basis-SVG besteht aus drei Gruppen (das <g>-Element):

  • am weiten hinten liegende Gruppe, ID "Hintergrund", beinhaltet alle unveränderlichen Elemente
    • Die Art der Elemente in der Gruppe sind ebenso egal wie ihre IDs
  • davor liegende Gruppe, ID "Basis", enthält die zu Pfade aus denen die Einzelbilder erzeugt werden sollen.
    • Nur Pfade erlaubt
    • Die ID der Pfade ist der Dateiname der daraus zu erzeugenden Datei und ein Code für die Dateibeschreibung, Details unten
  • an weitesten vorne liegende Gruppe, ID "Hervorgehoben", enthält die Definitionen für den hervorgehobenen Pfad.
    • ein Pfad mit beliebigen Punkten, hier ist nur die Strich- und Flächenfarbe, die Strichdicke,... wichtig.

Beispiel[Bearbeiten | Quelltext bearbeiten]

Basisdatei[Bearbeiten | Quelltext bearbeiten]

Beispiel-Basisdatei

Unten zu sehen ist der stark gekürzte Quellcode eines einfachen, mit Inkscape erstellten Beispiels, die Originaldatei ist rechts zu sehen. Ziel ist es die vier hellorangen Striche dicker und dunkelorange zu machen, der Hintergrund (blaue und grüne Quadrate sowie weißer Kreis) sollen gleichbleiben. Der dunkelorange "Punkt" in der Mitte ist nur zur Definition des Stiles der hervorgehobenen Striche gedacht und soll in den Zieldateien nicht mehr erscheinen.


<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->

<svg
  ...
  <metadata>
  ...
  </metadata>
  <g id="Hintergrund"> <!-- Die g "Hintergrund" bleibt in allen Dateien unverändert -->
    <path
       id="Beliebige Pfad-ID"
       d="Pfaddefinition..."
       style="...grün gefüllt..." />
    <path
       id="Beliebige Pfad-ID" 
       style="...blau gefüllt..."
       d="Pfaddefinition..." />
    <path
       id="Beliebige Pfad-ID"
       d="Pfaddefinition..."
       style="...blau gefüllt..." />
    <path
       id="Beliebige Pfad-ID"
       style="...grün gefüllt..."
       d="Pfaddefinition..." />
    <path
       id="Beliebige Pfad-ID"
       d="Pfaddefinition Kreis..."
       sodipodi:...
       style="...weiß gefüllt..."
       sodipodi:type="arc" />
  </g>
  <g id="Basis"> <!-- Aus den Pfaden der g "Basis" werden die Dateien generiert -->
    <path
       id="krdBot_Test_links.linken" //Die id der Pfade ist aufgebaut aus (Dateiname).(Variable für die Dateibeschreibung)
       d="Pfaddefinition..."
       style="...hellorange und dünn..." />
    <path
       id="krdBot_Test_rechts.rechten"
       d="Pfaddefinition..."
       style="...hellorange und dünn..." />
    <path
       id="krdBot_Test_oben.oberen"
       d="Pfaddefinition..."
       style="...hellorange und dünn..." />
    <path
       id="krdBot_Test_unten.unteren"
       d="Pfaddefinition..."
       style="...hellorange und dünn..." />
  </g>
  <g id="Hervorgehoben"> <!-- In der g "Hervorgehoben" wird der Stil des hervorgehobenen Pfades definiert. -->
    <path
       id="path288275"
       d="Pfaddefinition..."
       style="...dunkelorange und dick..." />
  </g>
</svg>

Dateibeschreibung[Bearbeiten | Quelltext bearbeiten]

Zur Erstellung wird zusätzlich eine Dateibeschreibung benötigt. Diese wird aufgebaut wie üblich kann aber mit dem oben in der ID nach dem Punkt angegebenen Parameter variiert werden. Die Beschreibung für unser Beispiel würde wie folgt aussehen:

{{Information
|Description=Testdatei mit Strich am <!--krd.$1--> Rand
|Source={{own}}
|Date=2011-12-20
|Author=[[User:AleXXw|AleXXw]]
|Permission=
|other_versions=
}}
{{PD-ineligible}}
[[Category:AleXXws Testfiles|T<!--krd.$1-->]]


Die <!--krd.$1--> werden je Datei ersetzt, in der ersten Datei unseres Beispiels würde in der 2. Zeile stehen :

|Description=Testdatei mit Strich am linken Rand

Ergebnis[Bearbeiten | Quelltext bearbeiten]

Nachdem die Vorarbeiten getan sind geht der Bot jeden Pfad in der g "Basis" durch und kopiert seine Pfaddefinition in den Pfad in der g "Hervorgehoben". Danach speichert er die entstandene Datei unter <Erster Parameter der ID>.svg (im ersten Pfad des Beispiels also krdBot_Test_links.svg), als Dateibeschreibung wird der vorbereitete und vom Bot aktualisierte Text angegeben. Dadurch ergeben sich in unserem Beispiel 4 Dateien: