PDF-Flatter

PDF-Flatter
  • Version 2
  • Download 478
  • Dateigröße 3.71 MB / 143MB
  • Datei-Anzahl 2
  • Erstellungsdatum 5. April 2023
  • Zuletzt aktualisiert 9. Mai 2025
Download

Mit dem PDF-Flatter können Sie einfach in einer PDF-Datei alle Formularfelder in unveränderliche Textfelder umwandeln(“flatten”). Das erhöht die Sicherheit einer PDF-Datei enorm. 
Das Programm kann einzeln für sich arbeiten oder auf der Kommandozeile verwendet werden.

Das Programm kann auch als Konsolenanwendung arbeiten oder ganz einfach in einem Skript zu verwenden:
pdfflatter.exe Eingabedatei.pdf Ausgabedatei.pdf
Die dabei entstehende PDF ist kleiner, da die Formfelder weg sind und die PDF noch komprimiert ist. 

Bei korrupten Dateien wird versucht diese zu reparieren. Bei erfolglosem Reparaturversuch wird in der Zieldatei eine Meldung mit dem Fehler angegeben.

Das Programm ist klein und schnell.

Zweck:

Dieses Tool dient der automatisierten Verarbeitung von PDF-Dateien in zwei Hauptmodi:

  1. Flattening von Standard-PDFs: Reduziert die Komplexität normaler PDF-Dateien, indem interaktive Elemente wie Anmerkungen und die meisten Formularfelder in den sichtbaren Seiteninhalt integriert ("flachgemacht") werden. Bestimmte Formularfelder (die mit "Form.FormPublish", "Form.FormProcess" oder "Form.FormGenerate" beginnen) werden dabei bewusst nicht geflattet. Das Ergebnis ist eine "flache" PDF-Datei, die oft stabiler und kompatibler ist, aber keine interaktiven Formularfunktionen mehr bietet. Die Datei wird zudem komprimiert.
  2. Verarbeitung von PDF-Portfolios: Erkennt PDF-Portfolios (Container für andere Dateien) und extrahiert die eingebetteten Dateien. Es versucht, unterstützte Dateitypen (PDF, Word, Excel, PowerPoint, Text, Bilder, HTML, EML) in das PDF-Format zu konvertieren und fügt diese konvertierten Inhalte zusammen mit Trennseiten in ein einziges, neues PDF-Dokument ein. Nicht unterstützte Dateitypen werden übersprungen und im Zieldokument als Fehlerseite vermerkt.

Funktionsweise & Kernfeatures:

  • Zwei Betriebsmodi:

    • Grafische Benutzeroberfläche (UI): Ermöglicht die interaktive Auswahl von Eingabe- und Ausgabedateien über Dialoge. Unterstützt Drag-and-Drop für die Eingabedatei. Zeigt Statusmeldungen und Fehler über Dialogfenster an.
    • Kommandozeilenmodus: Ermöglicht die stille Verarbeitung im Hintergrund durch Übergabe von Eingabe- und Ausgabedateipfaden als Argumente. Es werden keine Fenster oder Dialoge angezeigt. Relative Pfade werden basierend auf dem Speicherort der ausführbaren Datei aufgelöst. Ideal für die Integration in Skripte oder Automatisierungen.

  • Portfolio-Erkennung: Unterscheidet automatisch zwischen normalen PDF und Portfolio-PDF .
  • Flattening (Normal-PDFs):

    • Macht alle Anmerkungen flach (page.Annotations.Flatten = True).
    • Macht Formularfelder flach, außer denen, die spezifischen Namenskonventionen folgen (field.Flatten = True).

  • Portfolio-Verarbeitung:

    • Extraktion: Liest eingebettete Dateien (PdfAttachment).
    • Konvertierung: Verwendet spezialisierte Syncfusion-Konverter (DocToPDFConverter, ExcelToPdfConverter, PresentationToPdfConverter, HtmlToPdfConverter) und Standard-.NET-Methoden (für Text, Bilder) sowie eine Drittanbieter-Bibliothek (MsgReader für EML), um unterstützte Formate nach PDF zu konvertieren.
    • Unterstützte Typen (im Portfolio): .".pdf", ".doc", ".docx", ".docm", ".dot", ".dotx", ".dotm", ".rtf", ".xls", ".xlsx", ".xlsm", ".xlsb", ".csv", ".ppt", ".pptx", ".pot", ".potx", ".pps", ".ppsx", ".pptm", ".potm", ".ppsm", ".txt", ".jpg", ".jpeg", ".png", ".gif", ".bmp", ".tif", ".tiff", ".html", ".htm", ".eml", ".msg"
    • Zusammenführung: Fügt die konvertierten PDF-Seiten (und neu erstellte Seiten für Text/Bilder) in ein einzelnes Ausgabedokument ein.
    • Strukturierung: Fügt automatisch Trennseiten mit dem ursprünglichen Dateinamen vor jedem konvertierten Inhalt hinzu.
    • Fehlerseiten: Fügt Seiten für nicht unterstützte Dateitypen oder bei Konvertierungsfehlern hinzu.

  • Drag-and-Drop (UI): Ermöglicht das Ziehen einer PDF-Datei auf das Eingabefeld.
  • Logging: Erstellt eine log.txt-Datei im Programmverzeichnis, die detaillierte Informationen über den Verarbeitungsprozess, erkannte Felder (im Normalfall), extrahierte Dateien (im Portfoliofall) und aufgetretene Fehler enthält.
  • Fehlerbehandlung: Fängt verschiedene Fehler ab (Datei nicht gefunden, beschädigte PDFs, Konvertierungsfehler, Speicherfehler) und versucht, den Prozess fortzusetzen oder kontrolliert abzubrechen. Erstellt im Fehlerfall (wenn möglich) ein PDF-Dokument mit der Fehlermeldung.
  • Technologie: Basiert auf .NET Framework 4.8 (VB.NET) und den Syncfusion Essential Studio Bibliotheken (insbesondere PDF, DocIO, XlsIO, Presentation, HtmlConverter, aber nicht MIME). Verwendet das MsgReader NuGet-Paket für EML und MSG.

Verwendung:

  • UI-Modus:

    1. Starten Sie die pdfflatter.exe.
    2. Klicken Sie in das Feld "Ursprungsdatei" oder ziehen Sie eine Datei per Drag-and-Drop darauf, um die zu verarbeitende Datei auszuwählen.
    3. Klicken Sie in das Feld "Zieldatei", um den Speicherort und Namen für die Ausgabedatei festzulegen (muss eine .pdf-Endung haben).
    4. Klicken Sie auf den "Verarbeiten"-Button.
    5. Warten Sie auf die Erfolgs- oder Fehlermeldung. Überprüfen Sie die log.txt für Details.

  • Kommandozeilenmodus:

    1. Öffnen Sie die Eingabeaufforderung oder PowerShell.
    2. Navigieren Sie zum Verzeichnis, in dem pdfflatter_2.exe liegt.
    3. Führen Sie den Befehl aus:
      pdfflatter_2.exe "PfadzurEingabedatei" "PfadzurAusgabedatei.pdf"

      • Verwenden Sie Anführungszeichen ("), wenn die Pfade Leerzeichen enthalten.
      • Wenn Sie nur Dateinamen angeben (z. B. pdfflatter.exe_2 input.pdf output.pdf), sucht das Programm die Dateien im gleichen Verzeichnis wie die .exe.

    4. Das Programm läuft ohne sichtbare Fenster. Überprüfen Sie nach Abschluss die erstellte Ausgabedatei und die log.txt im Programmverzeichnis.

Abhängigkeiten:

  • .NET Framework 4.8 Runtime auf dem ausführenden Computer.
  • Die mitgelieferten Syncfusion DLLs (Pdf.Base, Pdf.Parsing, DocIO.Base, DocToPdfConverter.Base, XlsIO.Base, ExcelToPdfConverter.Base, Presentation.Base, PresentationToPdfConverter.Base, HtmlConverter.Base, Compression.Base, Licensing, etc.) müssen im gleichen Verzeichnis wie die .exe liegen.
  • Die MsgReader DLL (aus dem NuGet-Paket) muss vorhanden sein.
  • Die Blink-Laufzeitdateien für den HtmlConverter (im Unterordner runtimes) müssen vorhanden sein.

Basis:  .NET 4.8

DateiAktion
pdfflatter-2.zipDownload
pdfflatter.zipDownload

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Seite verwendet Akismet, um Spam zu reduzieren. Erfahren Sie, wie Ihre Kommentardaten verarbeitet werden..

Nach oben scrollen
WordPress Cookie-Hinweis von Real Cookie Banner