Panorama Automatisch zusammensetzen
Hallo an alle Batch Profis da draußen.
Ich kämpfe nun schon seit ein paar Tage und habe trotz einiger sehr hilfreichen Tutorials es noch nicht geschaft meiner Lösung näher zu kommen... Deshalb bräuhte ich ein wenig Rat der Profis
Meine Aufgabenstellung:
ich habe ein Ordner in dem Bilder im Hochformat abgelegt sind (IMG_2021..._01, IMG_2021...02,...). Davon würde ich gerne per Komandozeile immer Zwei Bilder nehemen und an Irfanview übergeben und nebeneinander Platzieren lassen. Das ganze sollte dann als Datei gespeichert werden.
Was schon funktioniert:
Ich habe einzelen Teile schon mal getestet und diese Funktionieren auch wie gewünscht.
Das Übergeben von 2 (fixen) Datein an Irfvanview klappt schon sehr gut
Auch das erzeugen einer Text Datei in der alle meine Dateine stehen funktioniert
Diese Textdatei einzulesen und in Variablen zu schreiben funktioniert auch
Was jedoch nich nicht geht ist die Übergabe von immer Zwei Datein an Irfanview...
Dazu habe ich eigentlich eine for /L Schleife gebastelt.
Das ganze Program sieht dann wie folgt aus:
Mein Problem ist hier die Letzte for/L Schleife. Denn hier wird bei die Variable Bild1 und Bild2 nicht rihtig erzeugt.
Aktiviere ich die Auskommentierte Kontrollausgabe so erhalte ich für echo%%L den erwarteten wert, für echo !B! und echo !A! ebenfalls
für echo !Bild1! und echo !Bild2! erhalte ich jedoch nur [ ].
Könnte mir hier jemand auf die Sprüge helfen wo mein Fehler liegt?
Vielen Dank
Ich kämpfe nun schon seit ein paar Tage und habe trotz einiger sehr hilfreichen Tutorials es noch nicht geschaft meiner Lösung näher zu kommen... Deshalb bräuhte ich ein wenig Rat der Profis
Meine Aufgabenstellung:
ich habe ein Ordner in dem Bilder im Hochformat abgelegt sind (IMG_2021..._01, IMG_2021...02,...). Davon würde ich gerne per Komandozeile immer Zwei Bilder nehemen und an Irfanview übergeben und nebeneinander Platzieren lassen. Das ganze sollte dann als Datei gespeichert werden.
Was schon funktioniert:
Ich habe einzelen Teile schon mal getestet und diese Funktionieren auch wie gewünscht.
Das Übergeben von 2 (fixen) Datein an Irfvanview klappt schon sehr gut
echo off
Set PFAD=C:\Users\...\
Set Datei1=IMG_2021...01.jpg
Set Datei2=IMG_2021...01.jpg
"C:\Program Files\IrfanView\i_view64.exe" /panorama=(1,%PFAD%%Datei1%,%PFAD%%Datei2%)/convert=%Datei1%+%Datei2%
pause
Auch das erzeugen einer Text Datei in der alle meine Dateine stehen funktioniert
echo off
Set PFAD=C:\Users\...\
dir /b /a-d %Pfad% >inhalt.txt
Diese Textdatei einzulesen und in Variablen zu schreiben funktioniert auch
@echo off
setlocal enabledelayedexpansion
Set Inhalt=C:\Users\...\Inhalt.txt
Set Pfad=C:\Users\...\
set "N=0"
REM Dateiname der Variablen (Datei[0-N])zuweisen
FOR /F "delims=" %%i in (%Inhalt%) do (
echo %%i
set /a "N+=1"
set "Datei_!N!=%%i"
)
Was jedoch nich nicht geht ist die Übergabe von immer Zwei Datein an Irfanview...
Dazu habe ich eigentlich eine for /L Schleife gebastelt.
Das ganze Program sieht dann wie folgt aus:
@echo off
setlocal enabledelayedexpansion
Set Inhalt=C:\Users\...\Inhalt.txt
Set Pfad=C:\Users\...\
set "N=0"
REM Dateiname der Variablen (Datei[0-N])zuweisen
FOR /F "delims=" %%i in (%Inhalt%) do (
echo %%i
set /a "N+=1"
set "Datei_!N!=%%i"
)
Echo %Datei_1%
Echo %Datei_10%
pause
REM Anzahl der Datein in Inhalt Errechnen (N) und die aufgerundete Hälfte berechnen (H)
Echo %N%
set /a H = N/2 + N %% 2
Echo %H%
pause
REM Auswahl der entsprechenden Datein und weitergeben an die Variable Bild 1 und Bild 2. Danach übergabe an Irfanview
for /L %%L in (1 1 %H%) do (
REM echo %%L
set "B=%%L"
set /a "B=B*2"
REM echo !B!
set "Bild2=[!%Datei%%B%!]"
REM Echo !Bild2!
set /a "A=B-1"
REM echo !A!
set "Bild1=[!%Datei%%A%!]"
REM Echo !Bild1!
REM "C:\Program Files\IrfanView\i_view64.exe" /panorama=(1,%PFAD%!Bild1!,%PFAD%!Bild2!)/convert=!Bild1!+!Bild2!
)
pause
Mein Problem ist hier die Letzte for/L Schleife. Denn hier wird bei die Variable Bild1 und Bild2 nicht rihtig erzeugt.
Aktiviere ich die Auskommentierte Kontrollausgabe so erhalte ich für echo%%L den erwarteten wert, für echo !B! und echo !A! ebenfalls
für echo !Bild1! und echo !Bild2! erhalte ich jedoch nur [ ].
Könnte mir hier jemand auf die Sprüge helfen wo mein Fehler liegt?
Vielen Dank
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 666679
Url: https://administrator.de/forum/panorama-automatisch-zusammensetzen-666679.html
Ausgedruckt am: 01.05.2025 um 09:05 Uhr