Batchverarbeitung hunderter Ordner mit TIF-Dateien in jeweils eine PDF

Marlboro

Neu angemeldet
Registriert
25 Aug. 2013
Beiträge
29
Hallo zusammen,

ich habe mehrere gescannte Bücher in PDF-Form und die zunächst mittels...
[src=bash]@Echo OFF

FOR /D /R %%# in (*) DO (
PUSHD "%%#"
FOR %%@ in ("index*") DO (
Echo Ren: ".\%%~n#\%%@" "%%~n#%%~x@"
Ren "%%@" "%%~n#%%~x@"
)
POPD
)

Pause&Exit[/src]
...auf verschiedene Ordner, benannt nach den PDF-Dateinamen, verteilt. Daraufhin habe ich mir die PDFs aller neuen Unterordner mittels exportieren lassen und zwar abgespeichert in den durch das Batch-Skript erstellten Ordnern.

Die JPEG-Dateien in jenen Ordnern waren dann Basis für eine Bearbeitung in . Da sind jetzt in einem neuen Unterordner /out sämtliche von ScanTailer aufgehübschten und geteilten PDF-Seiten als TIF-Datei gespeichert. Diese müssen jetzt alle wieder in einer jeweiligen PDF gebündelt werden (um sie dann durch den OCR-Prozess zu jagen).

Sehr sehr gerne würde ich den Prozess der Erstellung von PDFs aus den Ordnerinhalten mittels einer Stapelverarbeitung hinbekommen. Diese Skript scheint exakt das zu machen (bräuchte zwar vorher eine Konvertierung der TIFs in PDFs, was allerdings machbar sein könnte) - kostet aber 85$: .

Hat ggf. jemand eine Idee, wie man das bewerkstelligen könnte? Ob eine Windows oder Linux-Lösung, das bekäme ich beides irgendwie hin.

Vielen Dank und lieben Gruß!
 
Mit , zum Beispiel.

Introduction

The PDF functions in PHP can create PDF files using the PDFlib library from PDFlib GmbH (» www.pdflib.com). A restricted version called PDFlib Lite 7 is available for free, but it is no longer maintained since 2010. PDFlib integration for PHP is still actively maintained by PDFlib GmbH. It is mainly targeted at the commercial PDFlib versions, but can also be used for the old PDFlib Lite.

If you want to use PDFlib we urge you start with the examples which are included in all PDFlib packages, and refer to the extensive manuals in PDF format which are also included. At a minimum you should take a look at the hello.php sample to learn basic setup for PDFlib usage.

So als Idee...
 
kann sehr einfach aus vielen Bilddateien PDFs erzeugen.

Wenn die Namen der TIF-Dateien im gleichen Ordner in aufsteigend alphabetischer oder numerischer Folge vorliegen, genügt unter Linux ein:

[src=bash]convert *.tif ergebnis.pdf[/src]

Natürlich gibt es zillionen Einstellmöglichkeiten:
 
Ich würd das auch mit ImageMagick machen oder mit Ghostscript (gs). Damit lassen sich die erstellten Pdfs auch schön komprimieren. Alles in einem For Loop abarbeiten, dann hast du für jedes Tif ein separates PDF.
 
Wenn dein "Hauptsystem" Windows ist, kannst du dir auch unter Windows installieren, dort dann imagemagick (pacman -Syu imagemagick) und dann folgendes im Ordner (mit cd gelangst du dort hin) ausführen:

[src=bash]ls *.tif | xargs -I% convert % %.pdf[/src]

Damit konvertierst du alle TIFs in PDF.

Keine Ahnung, warum man den Export der PDF-Seiten als Bild in Photoshop machen will, aber das geht folgendermaßen:

[src=bash]convert langes.pdf einzelne-%04d.jpg[/src]

Das "%04d" heißt, dass nummerierte Dateinamen mit 4 Ziffern (einzelne-0001.jpg etc.) entstehen. Geht vermutlich viel schneller als mit Photoshop und mit etwas Feintuning gibt's wohl auch bessere Ergebnisse.

EDIT: Achso, zum Zusammenfügen von PDF-Dateien habe ich mit pdfunite aus dem Paket poppler-utils sehr gute Erfahrungen gemacht. Dürfte ungefähr so funktionieren:

[src=bash]pdfunite *.pdf andererordner/output.pdf[/src]
 
kostet aber 85$: .!
das sieht mir nach einem "PDF zusammenfügen" Batch aus, da könntest du nehmen. Mit grafischer Oberfläche lassen sich PDF zusammenfügen, einzeln verschieben, drehen, löschen, aufsplitten uvm., Vllt habe ich dich falsch verstanden, aber sinnvolles Tool :)
 
Zuletzt bearbeitet:
  • Thread Starter Thread Starter
  • #8
Oh, das sieht interessant aus, Danke! Ist mir als jemand, der maximal PHP verändern, nicht aber wirklich durchdringen kann, aber nicht sooo lieb :D.

Danke auch dir für den Tipp, das sieht zwar spannend aus - aber unter Ubuntu brauche ich oft eigentlich keine GUI, das macht bei mir eigentlich nur so Knechtsdinge :D. Ich bin, schande über mein Haupt, einfach ein großer Adobe Acrobat-Fan :D.

, , : Ja, perfekt - die Imagemagick-Lösung gefällt mir sehr gut, vielen lieben Dank! Das geht richtig fix und die PDFs sind schon ganz schön gut klein in der Größe :T.

Bestünde auch noch die Option, dass man... [src=bash]ls *.tif | xargs -I% convert % %.pdf[/src]... und ... [src=bash]pdfunite *.pdf $SUBDIRECTORY/$NAME-VON-ORDNER-IN-DEM-ICH-MICH-BEFINDE.pdf[/src]
auf alle Subdirectories auf einmal anwendet :)?

PS: Sorry für die späte Antwort, Silvester war böse :D.
 
Könnte mit Find funktionieren. Dahingerotzt, nicht getestet, mach' vorher Backups.

[src=bash]find . -type d -exec pdfunite {}/*.pdf {}.pdf \;[/src]

Was dann vermutlich leider passiert, ist, dass die Ausgangs-PDFs ./pfad/zum/unterverzeichnis.pdf heißen und nicht ./pfad-zum-unterverzeichnis.pdf. Das könnte man mit sed, Regex und dem Ersetzen von / durch - lösen.

EDIT: Vielleicht so? (natürlich ebenfalls ungetestet!)

[src=bash]find . -type d -exec sh -c "pdfunite {}/*.pdf `echo {} | sed -e 's8\/8-8g'`.pdf" \;[/src]

EDIT: hm, nee.
 
Zuletzt bearbeitet:
Zurück
Oben