PDF-Datei Seiten mit Batch, Tokens und Ghostscript extrahieren
Habe Dank des For-Tutorials ein kleines Batch geschrieben um einzelne Seiten aus einer .pdf-Datei zu extrahieren. Jetzt würde ich gerne diese einzelnen Seiten mittels Tokens nochmals vereinfachen. Dazu sollen die Seiten 1,19-20,11-12,13-18,21 aus der Datei.pdf extrahiert werden. Leider bin ich mit meiner "Tokens"-Recherche am Ende oder bekomme das einfach nicht hin.
FOR /F "delims=" %%i in ('dir /a-d /b /s "datei.pdf"') do (
"C:\Program Files\gs\gs9.04\bin\gswin64c" ^
-dNOPAUSE -sDEVICE=pdfwrite -dMaxBitmap=300 ^
-sOutputFile="%%~nia.pdf" ^
-dBATCH ^
-dFirstPage=1 -dLastPage=1 "%%i" ^
-dFirstPage=19 -dLastPage=20 "%%i" )
-dFirstPage=11 -dLastPage=12 "%%i" ^
-dFirstPage=13 -dLastPage=18 "%%i" ^
-dFirstPage=21 -dLastPage=21 "%%i" ^
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 177969
Url: https://administrator.de/contentid/177969
Ausgedruckt am: 26.11.2024 um 00:11 Uhr
3 Kommentare
Neuester Kommentar
Moin,
Ich bin mir nicht sicher, was du genau willst....
Klar, man "kann" die batch verkuerzen und ein paar wiederkehrende befehlsketten in eine schleife packen.
Aber ob die dann einfacher zu lesen ist oder schneller laeuft?
Bedenke, du willst ganz krumme zahlen nehmen und nix stupides, wie nur grade zahlen von 2 bis 8.
Also nochmal, was genau soll das ziel sein?
Btw bist du dir sicher, das die ueberhaupt das macht, was du willst?
Zeile 7 das ) sieht mir nicht danach aus......
Gruss
Ich bin mir nicht sicher, was du genau willst....
Klar, man "kann" die batch verkuerzen und ein paar wiederkehrende befehlsketten in eine schleife packen.
Aber ob die dann einfacher zu lesen ist oder schneller laeuft?
Bedenke, du willst ganz krumme zahlen nehmen und nix stupides, wie nur grade zahlen von 2 bis 8.
Also nochmal, was genau soll das ziel sein?
Btw bist du dir sicher, das die ueberhaupt das macht, was du willst?
Zeile 7 das ) sieht mir nicht danach aus......
Gruss
Hallo majcho!
Wenn schon, dann aber besser immer VonSeite und BisSeite angeben - ungetestet:
Grüße
bastla
Wenn schon, dann aber besser immer VonSeite und BisSeite angeben - ungetestet:
set "Seiten=1-1,19-20,11-12,13-18,21-21"
FOR /F "delims=" %%i in ('dir /a-d /b /s "datei.pdf"') do (
for %%a in (%Seiten%) do for /f "tokens=1-2 delims=-" %%f in ("%%a") do (
"C:\Program Files\gs\gs9.04\bin\gswin64c" ^
-dNOPAUSE -sDEVICE=pdfwrite -dMaxBitmap=300 ^
-sOutputFile="%%~nia.pdf" ^
-dBATCH ^
-dFirstPage=%%f -dLastPage=%%g "%%i"
)
)
bastla