Emails/eml Dateien inkl. anlagen in eine PDF Datei umwandeln, das macht der eml2pdf Konverter Version 1.02.
Die Version ist in x86 und ARM verfügbar, und ist seid dem 25.11.2025 verfügbar.
📒 Weitere Artikel dieser Beitragsserie:
Rechts oben, unter „Newsletter abonnieren“, findest du das Suchfeld!
Gib „Paperless“ ein und drücke die [ENTER/EINGABE]-Taste, um alle Paperless-Artikel anzuzeigen.
Einführung in eml2pdf als Konvertierungstool
Willkommen zu unserem neuesten Projekt: eml2pdf! Dieses Tool wurde speziell entwickelt, um EML-Dateien – einschließlich aller Anlagen – in ein einziges, benutzerfreundliches PDF-Dokument umzuwandeln. eml2pdf ist ein unverzichtbares Hilfsmittel für alle, die ihre E-Mail-Korrespondenz effizient digitalisieren möchten. Mit einem Fokus auf GoBD-Konformität (Grundsätze zur ordnungsmäßigen Führung und Aufbewahrung) stellt es sicher, dass alle Metadaten gesichert und die Konvertierung nachprüfbar bleibt – perfekt für Unternehmen und Einzelpersonen, die gesetzliche Anforderungen erfüllen müssen.
100% Integration in Paperless
Ein Highlight von eml2pdf ist seine nahtlose Integration in Paperless, eine beliebte Lösung für papierlose Dokumentenverwaltung. Diese 100%ige Kompatibilität ermöglicht es Nutzern, eml2pdf direkt in ihre bestehenden Paperless-Workflows einzubinden. Egal, ob es um die Archivierung von E-Mails oder das Verwalten von Anlagen geht – eml2pdf passt sich perfekt an und sorgt dafür, dass Ihre Dokumente einheitlich und zugänglich bleiben. Die Integration ist so gestaltet, dass sie den täglichen Betrieb nicht stört und dennoch maximale Effizienz bietet.
Leistungsbeschreibung
eml2pdf glänzt durch seine Fähigkeit, EML-Dateien inklusive aller Anlagen in ein einziges PDF zu konvertieren. Das Tool verarbeitet Eingabeformate wie typische EML-Dateien und integriert Anlagen wie Bilder oder PDFs nahtlos als separate Seiten im Ausgabe-Dokument. Die Leistung ist beeindruckend: Eine Konvertierung dauert etwa 5-10 Sekunden, abhängig von der Anzahl und Größe der Anlagen. Es läuft auf Python 3.11 mit minimalen Abhängigkeiten wie LibreOffice und kann mehrere Dateien gleichzeitig verarbeiten, je nach verfügbaren Systemressourcen. Dies macht eml2pdf skalierbar und ideal für größere Projekte.
Video: eml2pdf Konverter Version 1.02 – Emails in PDF umwandeln, 100% Paperless kompatibel
Sprache: 🇩🇪🇬🇧
☝️ Benutze YouTube Untertitel für alle Sprachen.
Direkt zum GitHub Projekt:
https://github.com/Klissner/eml2pdf-Converter-Docker-
Version 1.02 – Änderungen
- Startprobleme des Containers aus Version 1.01 wurden behoben
- Plattform-Erweiterung für x86 und ARM
- Komplett überarbeitetes Layout der erzeugten PDF-Datei
Unterstützte Formate:
📄 Dokumente (via LibreOffice):
.doc, .docx (Word)
.xls, .xlsx (Excel)
.ppt, .pptx (PowerPoint)
.odt (OpenDocument Text)
.ods (OpenDocument Spreadsheet)
.odp (OpenDocument Presentation)
.rtf (Rich Text Format)
.pages (Apple Pages)
.numbers (Apple Numbers)
🖼️ Bilder (via PIL/Pillow):
.png
.jpg, .jpeg
.gif
.bmp
.tiff
.webp
📋 PDF:
.pdf (wird direkt übernommen)
Einrichtung und Installation
Offizielle Images (GitHub Container Registry)
| Architektur | Version 1.01 (stabil) | Aktuell (rolling) | Empfohlen für |
| **x86_64** (Intel/AMD) | ghcr.io/klissner/eml2pdf:1.02-x86 | ghcr.io/klissner/eml2pdf:latest-x86 | Server, Desktop, NAS (Synology, QNAP, TrueNAS) |
| **ARM64** (aarch64) | ghcr.io/klissner/eml2pdf:1.02-arm | ghcr.io/klissner/eml2pdf:latest-arm | Raspberry Pi 4/5, Apple Silicon M1/M2, AWS Graviton |
Wichtig: Immer den vollen Tag mit Architektur verwenden!
Beschreibung der docker-compose.yml
Für die Erstellung oder Erweiterung deiner deine docker-compose.yml kannst du diese Vorlage verwenden. Passe sie gegebenenfalls an deine Anforderungen an.
services:
eml2pdf:
image: ghcr.io/klissner/eml2pdf:1.02-x86 # ← x86-Systeme
# image: ghcr.io/klissner/eml2pdf:1.02-arm # ← Raspberry Pi / Apple Silicon
container_name: eml2pdf
restart: unless-stopped
environment:
- TZ=Europe/Berlin
- LOGLEVEL=INFO
volumes:
- ./eml-import:/input
- ./consume:/usr/src/paperless/consume
- ./eml-import/archiv:/eml-import/archiv
- ./eml-import/error:/eml-import/error
- ./config.json:/config.json
- image: Verweist auf das gepushte Image von GitHub.
- volumes: Verbindet lokale Verzeichnisse mit dem Container.
- ./eml-import:/input: Verzeichnis für Eingabe-EML-Dateien.
- ./consume:/usr/src/paperless/consume: Ausgabeverzeichnis für konvertierte PDFs.
- ./eml-import/archiv:/eml-import/archiv: Archivverzeichnis für verarbeitete Dateien.
- ./eml-import/error:/eml-import/error: Fehlerverzeichnis mit Logdateien.
- ./config.json:/config.json: Bereitstellung der Konfigurationsdatei im Container.
- environment: Setzt Umgebungsvariablen.
- TZ=Asia/Bangkok: Definiert die Zeitzone.
- LOGLEVEL=INFO: Legt die Log-Stufe fest.
- restart: Startet den Container automatisch neu, es sei denn, er wird manuell gestoppt.
LOGLEVEL Einstellungen
- LOGLEVEL in eml2pdf: Steuert die Protokollierungsebene im Container.
- Mögliche Werte:
- CRITICAL (50): Nur schwere Fehler.
- ERROR (40): Fehler, die Ausführung beeinträchtigen.
- WARNING (30): Potenzielle Probleme.
- INFO (20, Standard): Allgemeiner Betriebsstatus.
- DEBUG (10): Detaillierte Fehlersuche.
- NOTSET (0): Fällt auf Standard zurück.
- Empfehlung: INFO für normalen Betrieb, DEBUG für Entwicklung.
- Anpassung: Ändere in docker-compose.yml unter environment (z. B. LOGLEVEL=DEBUG) und starte mit docker-compose up -d.
config.json
{
"separator_text": "Anlage {num}: {name}",
"poll_interval_seconds": 300,
"separator_page": "on",
"archive_retention_days": 30,
"max_logfile_size": 1048576,
"max_logfile_backups": 5
}
Parameter:
- separator_text: Text für Anlagentrenner (z. B. Anlage 1: datei.pdf).
- poll_interval_seconds: Intervall in Sekunden, um Eingabeverzeichnis zu prüfen (300 = 5 Minuten).
- separator_page: Fügt eine Trennseite vor Anlagen ein (on/off).
- archive_retention_days: Aufbewahrungszeit für Archivdateien in Tagen (30). Setzen Sie diesen Wert auf 0, um das automatische Löschen im Archiv zu deaktivieren.
- max_logfile_size: Maximale Größe der Logdatei in Bytes (Standard: 1 MB = 1048576). Wenn dieser Wert überschritten wird, rotiert die SizeRotatingFileHandler-Klasse die Logs (log.txt wird zu log.1, log.1 zu log.2, etc., bis max_logfile_backups erreicht ist). Setzen Sie diesen Wert auf 0, um das Logging zu deaktivieren; dabei werden bestehende Logdateien gelöscht!
- max_logfile_backups: Anzahl der Log-Backups (Standard: 5). Bestimmt, wie viele rotierte Logdateien (z. B. log.1, log.2) aufbewahrt werden. Ältere Backups werden gelöscht, wenn die maximale Anzahl erreicht ist. Setzen Sie diesen Wert auf 0, um das Erstellen von Backups und das damit verbundene Löschen zu deaktivieren.
Passen Sie die config.json an Ihre Bedürfnisse an (z. B. Zeitzone oder Intervall). Wenn Sie Änderungen vornehmen, können Sie die Datei in Ihrer .gitignore ignorieren, um sie nicht unbeabsichtigt hochzuladen.
Zusammenfassung der Log-Verwaltung
eml2pdf verwendet eine SizeRotatingFileHandler-Klasse, um die Logdatei-Größe zu verwalten. Bei Überschreiten von max_logfile_size (Standard: 1 MB) werden Logs rotiert (log.txt → log.1 → log.2 usw.) bis zu max_logfile_backups (Standard: 5) Backups. Wichtig: Wenn max_logfile_size auf 0 gesetzt wird, wird das Logging deaktiviert, und alle bestehenden Logdateien werden gelöscht! Setzen Sie max_logfile_backups auf 0, um das Erstellen von Backups zu verhindern.
Allgemeiner Lizenz- und Haftungsausschluss (Kurzfassung)
Diese Software wird unter einer Open-Source-Lizenz bereitgestellt.
Die Nutzung, Vervielfältigung, Veränderung und Weitergabe ist erlaubt, sofern dieser Hinweis erhalten bleibt.
- Keine Haftung: Der Autor übernimmt keinerlei Verantwortung für Schäden, Datenverluste oder sonstige Nachteile, die durch die Nutzung dieser Software entstehen.
- Keine Garantie: Die Software wird „wie sie ist“ bereitgestellt, ohne ausdrückliche oder stillschweigende Garantien, insbesondere nicht hinsichtlich Funktionsfähigkeit, Eignung für einen bestimmten Zweck oder Kompatibilität.
- Amtliche Anerkennung: Die Anerkennung von mit dieser Software erstellten Dokumenten oder Ergebnissen kann nicht garantiert werden. Ob und in welchem Umfang eine Anerkennung erfolgt, hängt von den jeweils zuständigen Behörden, Institutionen, Ländern oder Vertragspartnern ab.
- Eigene Verantwortung: Nutzung erfolgt ausschließlich auf eigenes Risiko.
Durch Verwendung dieser Software erklärt sich der Nutzer mit diesen Bedingungen einverstanden.
Paperless Setup
Unter Verwendung des richtigen Images, wie siehe oben, kannst du dieser ausführlichen Installation folgen.
Fazit
Mit eml2pdf haben Sie ein leistungsstarkes Tool an der Hand, das Ihre EML-Dateien effizient in PDFs umwandelt und perfekt in Paperless integriert ist. Die GoBD-Konformität sorgt für rechtliche Sicherheit, während die einfache Einrichtung und Konfiguration den Einstieg erleichtert. Probieren Sie es aus und optimieren Sie Ihre Dokumentenverwaltung noch heute!

Link zur Unterstützung / Spende für den Kanal
Wenn meine Beiträge hilfreich sind oder dir geholfen haben, würde ich mich über eine Unterstützung sehr freuen 🙏
#eml2pdf #Paperless #Dokumentenmanagement #PDFKonvertierung #Effizienz #Digitalisierung #OpenSource #TechTipps
Moin, wenn eml2pdf office Dokumente verarbeiten kann, wäre es dann nicht möglich, diese direkt auch ohne eml-container zu verarbeiten? Wäre dann eine nette Alternative zu Tika/Gotenberv
//huebi
Hi Hübi,
Tika und Gotenberg konvertieren ja auch das meiste, und das kannst du ja auch direkt nutzen, also DOCX, ODT, XLSX, JPG usw. Dafür ist eml2pdf aber nicht gedacht.
eml2pdf ist dafür gedacht, E-Mails mit Anhängen (Office, Bilder, PDF usw.) in einem einzigen PDF zusammenzufassen, sodass es ein PDF gibt, das alle Anlagen beinhaltet. Damit muss Paperless nur eine Datei verarbeiten und nicht die E-Mail und jede Anlage als extra Dokument. So verliert man nicht so leicht den Zusammenhang.
LG, Mike
Moin, tolles Tool. Läuft sehr gut mit Paperless. Habe nur eine Frage zum Thema Umlaute äöü …
Leider werden äöü nicht richtig dargestellt. Kann ich an irgendeiner Stelle Einstellungen vornehmen damit die Umlaute auch richtig dargestellt werden.
Die Umlaute, ich würde die Datenbank in betracht ziehen. Die Tabellen sind im Falschen Zeichensatz definiert.
Aber OK in welchen Bereich hast du das Problem? Daten die Du in Paperless eingegeben hast, Daten die Paperless einfügt oder Werden schon die Dateinamen Umlauten falsche erstellt?
Die Umlaute werden bei der umwandlung der E-Mail entfernt.
Flligkeitstermin
Freundliche Gre
Ihre Telekom
Die Umlaute werden beim Einlesen der E-Mails entfernt.
zum Flligkeitstermin
Freundliche Gre
Ihre Telekom
Es ist bekannt, dass derzeit noch nicht alle Zeichensätze und Formatierungen korrekt funktionieren. Dieses Problem wird aktuell bearbeitet. Bitte den vorhergehenden Kontext beachten.
Hallo,
danke für das tolle Tool. Bei mir wird leider der Text innerhalb des PDF abgeschnitten. D.h. es erfolgt kein automatischer Zeilenumbruch am Seitenende.
Habe ich einen Fehler in der Konfiguration?
PDF Dateien werden abgeschnitten ? 🧐 Eigentlich werden die PDF Dateien nicht bearbeitet sondern 1:1 in das Ziel PDF eingebunden.
Welches Format hat das Ursprünglich PDF ? DinA4, DinA3 oder was anderes, hier könnte was schief laufen.
Ein Screenshot von der Original PDF Datei und der Ausgabe PDF Datei, die die Umbrüche zeigt, währe auch eine Hilfe.
Da habe ich mich falsch ausgedrückt: Der Text der E-Mail wird beim konvertieren in die PDF nicht umgebrochen. Die PDF wird 1:1 in das neue PDF übernommen.
Kannst du mir Informationen zur verfügung stellen? Die eml Datei währe gut, vertrauliche Daten natürlich unkenntlich gemacht. Wird nach der Analyse gelöscht. Dann LOG Dateien sollten im eml-importverzeichnis vorhanden sein.
… und Welche Version nutzt du und welche Plattform (ARM oder x86)
Ich kann mir im Moment noch keinen Reim darauf machen, aber das kriegen wir schon hin.
Hallo, teste gerade das tool – funktioniert soweit schon ganz gut.
Zwei Punkte dazu habe ich.
1.) Wie ist der Abruf der Emails gedacht? Im Test habe ich die eml Dateien nun manuell in den input Ordner gelegt und die Daten sind dann automatisch in pdf gewandelt worden und automatisch zu paperless gelangt.
Wie bekomme ich nun aber einen automatischen eml/Emailabruf hin (gerne auch mit verschieben der Email in einen Email-Unterordner, nach erfolgreicher Verarbeitung)? Kann ich dafür irgendwie den Paperless Emailabruf nutzen? Oder wie ist das sonst angedacht?
2.) Beim Anlage „Trennblatt“ ist mir aufgefallen, das wenn es unter „AN“ viele Adressen gibt, diese alle in einer Zeile gedruckt werden. Damit laufen die rechts aus dem Blatt raus. Also es gibt kein Zeilenumbruch wie bei der Email selber (da funktioiniert alles mit dem Zeilenumbruch). Das passiert aber nur, wie gesagt, wenn die Emails an viele Empfänger ging (in meinem Test war die 4. Adresse dann schon abgeschnitten).
Danke!
ein Email Abruf ist der Zeit noch nicht in Arbeit, aber mal für später geplant. Das liegt einfach daran, das im Moment noch viel in das Tool einließen muss um es zu Perfektionieren. Das Betrifft mixed_boddys, multi Zeichensätze in al den Verschiedenen Formaten HTML, Text, Plain Text usw. Jetzt schon einen Email Abruf zu integrieren würde nur noch mehr Baustellen aufreissen, und die Qualität würde leiden – die muss jetzt ehrtest mal noch besser werden. Zu gut Deutsch ich dachte ich habe an alles gedacht, aber ich habe schon mehr Baustellen als mir lieb ist. Zur Trennseite, die wird jetzt noch angepasst, bevor die erste Beta getestet wird. Hier kommst Du genau richtig, das Ist in der nächsten Version (Ich hoffe noch im Januar) behoben, versprochen. Die EML Dateien verschieben, das kann man auch über den Email Client Machen. Einige unterstützen das Speichern von Email in EML dateien automatisch bei Eintreffen einer neuen Email. Was ich dir allerdings nahe legen würde ist „getmail“ zu verwenden, das das alles einfach und zuverlässig für dich erledigt. Zu Getmail kommt wenn ich da zu komme noch ein Beitrag wie das läuft, ist aber nicht schwierig.
Ok, danke für die schnelle Rückmeldung.
Ich habe mir jetzt einen Mailabruf per Getmail eingerichtet – funktioniert soweit ganz gut. Mails werden alle 5min abgerufen und dem input Ordner als eml Datei zugeführt. Benennung der Emails anhand des Betreffs (+ Datum und ID). Die Emails werden nach dem Abruf und eml Speicherung in einen Unterordner auf dem Imap Server verschoben (erstmal zur Sicherheit).
Aufgefallen ist mir noch:
Auf dem Trennblatt läuft auch der Dateiname von der jeweiligen Anlage nach rechts aus dem Blatt raus (je nach Länge).
Ich habe beim Testen von Text Emails (also rein Text, kein HTML) das Problem, das die Umbrüche im Text ignoriert werden. Der Text wird dann ohne Umbrüche hintereinander weg in der PDF geschrieben.