x-spezi
Goto Top

Batch um ein PDF in einem Ordner zu kompremieren und dann in einen anderen Ordner ablegen

Hallo zusammen,

ich habe einen einfachen Scanner der die PDF Dateien ziemlich groß werden lässt,
Jetzt möchte ich den Ordner mit diesen abgelegten PDF überwachen und dann diese Datei komprimieren und anschließend zu einem anderen Ordner verschieben.
Gibt es dafür eine Lösung? Evtl. mit Freeware oder Acrobat Professional ?

Ich habe schon einige Forum durchforstet aber leider keine passende Lösung gefunden.

PS: Eine ebenfalls in diesem Ordner abgelegte XML Datei sollte nur in dem neuen Ordner verschoben werden.

Grüße

X-Spezi

Content-Key: 211003

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

Printed on: April 26, 2024 at 12:04 o'clock

Member: Endoro
Endoro Jul 09, 2013 at 20:54:20 (UTC)
Goto Top
Hallo X-Spezi,

kann der Scanner auch andere Grafikdateien erstellen (TIFF, BMP, JPG, PNG usw)?
Dann könntest du auf zahlreiche freie Programme zum Komprimieren zurückgreifen.

lg
Member: Bitboy
Bitboy Jul 10, 2013 at 05:51:32 (UTC)
Goto Top
Hi,

gescannte PDFs werden normalerweise durch die eingestellte Auflösung (zum Beispiel 600 dpi) so gross. Wäre es keine Möglichkeit den Scanner umzustellen, dass er mit geringerer Qualität scannt?
Member: X-Spezi
X-Spezi Jul 10, 2013 at 09:34:08 (UTC)
Goto Top
Hallo zusammen,

Danke für Eure Antworten.

@ Endoro , ich könnte zwar in Tiff scannen, aber brauche am Ende ein komprimiertes PDF

@ Bitboy, gerade die Qualität ist wichtig, und mit Komprimierung währe es das richtige Ergebnis.

Grüße

X-Spezi
Member: colinardo
colinardo Jul 10, 2013 updated at 14:37:46 (UTC)
Goto Top
Hallo X-Spezi,
also mit Acrobat könntest du folgendes via VBS-Script machen:
Folgendes Script öffnet die PDF-Dateien im angegebenen Ordner und druckt sie auf einen benutzerdefinierten "Adobe PDF" Drucker der die Dateien in einem Ordner speichert. Die gewünschte Komprimierung kannst du in den Eigenschaften des Druckers festlegen(s. weiter unten).
Wenn du in Zeile 18 und 23 des Scripts die Kommentare entfernst siehst du wie Acrobat sich öffnet (nur für den Debug-Fall).
folderPDF = "D:\Ordner zu deinen PDFs"  
strPDFPrinterName = "Testprinter"  

Set fso = WScript.CreateObject("Scripting.Filesystemobject")  
For Each file In fso.GetFolder(folderPDF).Files
	If LCase(Right(file.Name,3)) = "pdf" Then  
		PrintToPDFPrinter(file.Path)
	End If
Next

Sub PrintToPDFPrinter(f)
	Set objAcro = CreateObject("AcroExch.App")  
	Set docAV = CreateObject("AcroExch.AVDoc")  
	Set docPD = CreateObject("AcroExch.PDDoc")  
	docAV.Open f,""  
	Set docPD = docAV.GetPDDoc()
	Set jsDoc = docPD.GetJSObject
	'objAcro.Show  
	Set pp = jsDoc.getPrintParams()
	pp.printerName = strPDFPrinterName
	pp.interactive = pp.constants.interactionLevel.silent
	jsDoc.print(pp)
	'objAcro.Hide()  
	objAcro.Exit()
	
	Set jsDoc = Nothing
	Set objAcro = Nothing
	Set docAV = Nothing
	Set docPD = Nothing
End Sub
alternativ kann man auch direkt aus der Batch die Dateien auf den benutzerdefinierten PDF-Drucker schicken.
set pdfPrinterName=TestPDFPrinter
set pathAcrobat=c:\Program Files (x86)\Adobe\Acrobat 10.0\Acrobat\Acrobat.exe
pushd "C:\OrdnerzudenPDFs"  
for /f "tokens=*" %%k in ('dir /b *.pdf') DO @(  
  start "" "%pathAcrobat%" /t "%%~fk" "%pdfPrinterName%"  
)
popd

back-to-topErstellen eines benutzerdefinierten Acrobat Distiller Druckers

305b75343b14841faa1042efe9f2a768
425d7f4a10ff125c003ad0764521b6f6

Dann in den Einstellungen des Druckers die Qualität und den Ausgabepfad festlegen.

70b3b746c821d0b0c2933d350bae1efc

Vielleicht hilft Dir das bei deinem Projekt weiter.

Grüße Uwe
Member: X-Spezi
X-Spezi Jul 10, 2013 at 18:19:13 (UTC)
Goto Top
Hallo Uwe,

danke für diese gute Info,

Das werde ich am Freitag gleich testen.

Viele Grüße

Horst