dieterwillswissen
Goto Top

PDF (mehrseitig) in einzelne Seiten per Skript auftrennen

Moinsen,

gibt es eine Möglichkeit mehrseitige PDFs per Skript in einzelne Seiten aufzuteilen?
Ich kenne diverse Tools, bei denen man das Tool aber erst aufrufen muss, mir geht es darum diesen Schritt schon einzusparen, indem der Benutzer bestenfalls das PDF auf ein Skript zieht und es dadurch aufgeteilt wird.

Vielen Dank

Content-ID: 3714066884

Url: https://administrator.de/contentid/3714066884

Ausgedruckt am: 20.11.2024 um 00:11 Uhr

3714160434
Lösung 3714160434 21.08.2022 um 12:40:47 Uhr
Goto Top
em-pie
Lösung em-pie 21.08.2022 um 12:40:52 Uhr
Goto Top
Moin,

installiere das Module PSWritePDF
und verbaue es in einem Skript, welches einen zu übergebenen Parameter (den Dateipfad der PDF) aufnimmt und verarbeitet

Anschließend erstellst du, wie hier beschrieben, eine Verknüpfung auf dem Desktop.
Du kannst dann im Anschluss eigentlich jede PDF auf die Verknüpfung ziehen. Fertig.

Ich würde in o. g. Script dann
  • Prüfen, ob die übergebene Datei eine PDF ist
if((Get-ChildItem 'C:\temp\file.1.pdf' | Select Extension).ToUpper -eq "PDF"){}

  • Prüfen, ob der übergebene Dateipfad auch existiert
if(Test-Path 'C:\temp\file.1.pdf' -PathType Leaf){}

  • die neuen PDFs in einem zu erstellenden Unterordner des Pfades aus der übergebenen PDF abspeichern

Gruß
em-pie
3714160434
Lösung 3714160434 22.08.2022 aktualisiert um 14:44:47 Uhr
Goto Top
Code (PSWritePDF vorher installieren Install-Module PSWritePDF), speichern unter "C:\Pfad\script.ps1"
Import-Module PSWritePDF
foreach($arg in $args){
    get-item $arg | %{Split-PDF -FilePath $arg -OutputFolder $_.DirectoryName -OutputName "$($_.Basename)_seite_"}  
}

Im "SendTo" Menü von Windows eine Verknüpfung erstellen die so aussieht:
powershell -ExecutionPolicy ByPass -NoProfile -WindowStyle Hidden -File "C:\Pfad\script.ps1"  

Dann PDF-Dateien im Explorer markieren, Rechtsklick > Senden an > "scriptname". Done.
Dieterwillswissen
Dieterwillswissen 23.08.2022 um 19:50:48 Uhr
Goto Top
Danke face-wink