• Hi Leute,

    ich suche eine vernünftige Methode um eine XML-Datei nach einer bestimmten Syntax zu schreiben. Das soll so aussehen:

    path = "pic1.jpg"
    width = "350"
    height = "262"
    thumbpath = "pic2.jpg"
    thumbwidth = "75"
    thumbheight = "56">


    Wie ihr seht sind die Quellen Bilder, die alle in einem Verzeichnis liegen und jetzt da rein müssen. An sich keine große Sache aber da es sich um knapp 1000 Bilder handelt ist ein händisches Erstellen ausgeschlossen.

    Ich meine ich kann Dateinamen aus einem Verzeichnis auslesen aber das schreibt zuviel redundante Daten mit. Größen kann ich nicht auslesen...

    Kennt jemand eine Methode um das zu bewerkstelligen? Kann so etwas Photoshop?

    [Ein Admin ändere mal bitte den Titel auf 'XML-Datei erstellen' ...Danke]

  • Die Daten auszulesen ist zb mit NCONVERT möglich.
    dann braucht man nur noch ein Script schreiben, das dann dieses Daten analysiert.

    aber mal ne Frage, für welchen Zweck ist diese XML? Hast Du dann auch noch nen Parser dafür?

  • hmm,wenn ich mich nicht verlesen habe macht thumbsplus 7 genau das was du willst... komplette ordner einlesen,thumbs davon erstellen und alles in xml schreiben.

    g/l

    md "%date%_%time:~0,2%.%time:~3,2%.%time:~6,2%"
    ...........................................................................................
    [X] <---- hier bitte bohren für neuen monitor.

  • Zitat von hippoth

    Dank dir Katja, ich teste mal. Die XML ist für eine AJAX basierende Bildergalerie. Ich probier da rum...

    Bilder Ordner per Drag und Drop auf infojpg.cmd

    Code
    @ECHO OFFECHO.&quot;%~f1&quot;IF &quot;%~f1&quot;==&quot;&quot; GOTO :ENDESET WORK=%~f1</p><p>ECHO.^&lt;^?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ^?^&gt;&gt;&quot;%WORK%\info.xml&quot;ECHO.^&lt;album path=&quot;%WORK%&quot;^&gt;&gt;&gt;&quot;%WORK%\info.xml&quot;FOR  %%A IN (&quot;%WORK%\*.jpg&quot;) DO CALL :INFOA &quot;%%~fA&quot;ECHO.^&lt;^/album^&gt;&gt;&gt;&quot;%WORK%\info.xml&quot;GOTO :ENDE:INFOAnconvert.exe -info %1 &gt; nconvert.infSET BW=0SET BH=0FOR /F &quot;tokens=1,2* delims=:&quot; %%B in (nconvert.inf) DO CALL :INFOB %%B %%CIF %BW% GTR 0 (IF %BH% GTR 0 (ECHO.	^&lt;image path=&quot;%~n1.jpg&quot; width=&quot;%BW%&quot; height=&quot;%BH%&quot; thumbpath=&quot;%~n1_tm.jpg&quot; thumbwidth=&quot;75&quot; thumbheight=&quot;56&quot;/^&gt;&gt;&gt;&quot;%WORK%\info.xml&quot;))ECHO.GOTO :EOF:INFOBIF %1==Width SET BW=%2IF %1==Height SET BH=%2GOTO :EOF:ENDESET BW=SET BH=SET WORK=PAUSE

    ergibt:

    Code
    &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt;
    &lt;album path=&quot;C:\Bilder\katjarella\AlbumA\images&quot;&gt;
    &lt;image path=&quot;gh018.jpg&quot; width=&quot;2950&quot; height=&quot;2094&quot; thumbpath=&quot;gh018_tm.jpg&quot; thumbwidth=&quot;75&quot; thumbheight=&quot;56&quot;/&gt;
    &lt;image path=&quot;gh053.jpg&quot; width=&quot;2950&quot; height=&quot;2094&quot; thumbpath=&quot;gh053_tm.jpg&quot; thumbwidth=&quot;75&quot; thumbheight=&quot;56&quot;/&gt;
    &lt;image path=&quot;gh141.jpg&quot; width=&quot;2094&quot; height=&quot;2950&quot; thumbpath=&quot;gh141_tm.jpg&quot; thumbwidth=&quot;75&quot; thumbheight=&quot;56&quot;/&gt;
    &lt;image path=&quot;gh182.jpg&quot; width=&quot;2950&quot; height=&quot;2094&quot; thumbpath=&quot;gh182_tm.jpg&quot; thumbwidth=&quot;75&quot; thumbheight=&quot;56&quot;/&gt;
    &lt;/album&gt;
  • Ähmm, hab doch noch ein Problem: in die XML wird leider nur der Pfad geschrieben, nix mehr.
    Ich muß aber auch dazu sagen, daß ich kein Config-File von NCONVERT habe. Wo soll ich das her nehmen? Die CMD sah mir aber auch nicht so aus, als ob ich irgendwas noch anpassen müßte.

  • also wenn ich den Ordner "C:\Bilder\katjarella\AlbumA\images" auf das Script schiebe, sucht er nach allen .jpg in dem Ordner. Ist dort eine datei mit der Endung .jpg zu finden, ruft das script nconvert.exe auf und speicher im Scriptpfad eine Datei mit namen nconvert.inf. Also das was nconvert ausgibt.

  • ne mach doch mal ne debug.cmd


    und was passiert und wird angezeigt, wenn Du da was draufschiebst?
    und in dem Ordner sind auch jpgs drin? NICHT UNTERORDNER!!!!
    steht was in dieser nconvert.inf drin?

  • zw. W2K <> XP eigentlich nicht. Auch nicht das mit dem "aktuellen Ordner".
    FehlerQuellen:
    * nicht sauber abkopiert
    * im Ordner gibts keine JPGs
    * dies JPGs sind mit nconvert nicht zu lesen.
    * die Ordner/Dateien sind nicht DOS konform, dazu zählen auch Umlaute!
    * irgendeine nconvert version, die die Ausgabe anders gestaltet, als mir bekannt ist.

  • Zitat von LigH

    Ist das wieder der kleine Unterschied zwischen Windows 2000 und Windows XP? Wo in dem einen das Programm im "aktuellen Ordner" läuft, und im anderen grundsätzlich immer in dem, wo die CMD/BAT-Datei liegt?


    Genau das ist das Problem. Ich habe die CMD und nconvert jetzt direkt in den Ordner der JPGs gelegt und eine Verknüpfung auf die CMD in den übergeordneten Ordner angelegt...Funktioniert!

    Dank an Katja für die CMD und LigH für den Hinweis. :daumen:

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!