# PDF Tools — Manual

> Vollständige Funktionsbeschreibung der PDF Tools: Viewer & Editor, Creator, Merge & Split, Convert und Reference — jede Funktion, jede Option, jedes Limit.

Source: https://www.jpkc.com/db/tools/pdf/manual/

Zurück zur Übersicht: [PDF Tools](https://www.jpkc.com/db/tools/pdf/) · Tool live öffnen: [www.jpkc.com/tools/pdf/](https://www.jpkc.com/tools/pdf/)

Dieses Manual beschreibt die **PDF Tools** vollständig: alle fünf Tabs, jede Funktion und jede Option, dazu Architektur und Betriebsgrenzen. Die Oberfläche ist auf Englisch — die Tab-, Button- und Optionsbezeichnungen stehen deshalb in ihrer englischen Original-Schreibweise (mit deutscher Erläuterung), damit du dich im echten Interface zurechtfindest.

## Architektur: alles im Browser

Die PDF Tools sind **rein clientseitig**. Es gibt keinen Server, der deine Dateien verarbeitet, kein API, keinen Upload und kein Konto. Jede Operation läuft per JavaScript lokal in deinem Browser. Dafür kombiniert das Tool mehrere Open-Source-Bibliotheken, die alle lokal mitgeliefert und erst nachgeladen werden, wenn du den jeweiligen Tab nutzt:

- **Mozilla PDF.js** (Apache 2.0) — der eingebettete Betrachter, das Rendern der Vorschauen, die Text-Extraktion und das Auslesen der Metadaten.
- **pdfmake** (MIT) — das Erstellen im *Creator* sowie die Konvertierung von Markdown und Simple HTML (erzeugt echten, durchsuchbaren Text). Eingebettete Schrift: **Roboto**.
- **pdf-lib** (MIT) — *Merge*, *Split* und *Images → PDF*.
- **html2pdf.js** (MIT, intern html2canvas + jsPDF) — die visuelle *Rich-HTML*-Wandlung (gerastert).

**Größenlimit:** Eingelesene Dateien dürfen **bis 50 MB** groß sein. Größere weist das Tool mit einer Meldung ab. Das schützt den Arbeitsspeicher deines Browsers — es ist kein serverseitiges Limit. Beim Öffnen von PDFs für *Merge* und *Split* ignoriert das Tool vorhandene Verschlüsselung (`ignoreEncryption`), kann also auch viele geschützte Dateien laden.

## Viewer & Editor

Der Standard-Tab beim Öffnen. Hier betrachtest und **bearbeitest** du ein PDF im vollwertigen Mozilla-PDF.js-Betrachter.

### PDF öffnen

Zieh eine `.pdf`-Datei per Drag & Drop in die Ablagezone oder klick auf **Browse Files**. Die Datei wird lokal als Objekt-URL geladen und im eingebetteten Betrachter angezeigt — sie verlässt deinen Browser nicht. Mit **Close** schließt du die Datei wieder.

### Betrachten, suchen, navigieren

Der eingebettete Betrachter bietet die komplette PDF.js-Oberfläche: blättern, zoomen, Seiten-Thumbnails und Inhaltsverzeichnis, **Suche mit Treffer-Hervorhebung**, Drehen, Präsentationsmodus und **Drucken**. Über die Werkzeugleiste oben im Tool gibt es zusätzlich **Fullscreen** für die Vollbild-Ansicht.

### Annotieren, hervorheben, zeichnen, signieren, Bilder einfügen

Die Editor-Werkzeuge des Betrachters erlauben echte Bearbeitung des PDFs:

- **Highlight** — Textstellen farbig hervorheben (Farbe, Dicke und Sichtbarkeit einstellbar).
- **FreeText** — Textnotizen direkt auf der Seite platzieren (Farbe, Schriftgröße).
- **Ink (Draw)** — freihändig zeichnen (Farbe, Deckkraft, Strichstärke).
- **Stamp (Add Image)** — ein Bild als Stempel einfügen.
- **Signature** — eine Unterschrift erstellen und setzen.

Deine Änderungen sicherst du über **Save** des Betrachters — das Ergebnis wird als neue PDF-Datei heruntergeladen. Es gibt keine serverseitige Speicherung; gespeichert wird ausschließlich lokal als Download.

### Formulare ausfüllen

Enthält das PDF interaktive Formularfelder (AcroForms), stellt der Betrachter sie als ausfüllbare Felder dar. Du trägst die Werte direkt ein und speicherst das ausgefüllte Formular über **Save**.

### Info (Dokument-Metadaten)

Der Button **Info** öffnet ein Fenster mit den Metadaten des Dokuments: Dateiname und -größe, Seitenzahl, Titel, Autor, Betreff, Schlagwörter, Ersteller (Creator), Producer, PDF-Version, **Seitenformat** (in Punkt, mm und Zoll, aus der ersten Seite berechnet), Erstellungs- und Änderungsdatum sowie die Flags **Linearized** und **Encrypted**. Leere Felder werden ausgeblendet. Über **Copy** kopierst du die Tabelle als Text. (Das Feld „Tagged" leitet sich aus dem AcroForm-Flag ab und zeigt damit eher das Vorhandensein von Formularfeldern an als eine echte Tagged-PDF-Struktur.)

### Text extrahieren

Der Button **Text** liest den gesamten Textinhalt aus dem PDF aus — Seite für Seite, jeweils mit einer Markierung `--- Page N ---`. Unten siehst du eine Statistik (Seiten, Wörter, Zeichen). Du kannst den Text per **Copy** kopieren oder als `.txt` herunterladen. Das funktioniert nur bei PDFs mit echtem Text-Layer; reine Scan-PDFs ohne Text liefern entsprechend wenig (das Tool hat **keine OCR**).

## Creator

Hier baust du ein PDF von Grund auf — aus Bausteinen statt aus Code. Links das Formular, rechts die Live-Vorschau.

### Document Settings

- **Page Size** — A4 (Standard), A3, A5, Letter, Legal oder Tabloid.
- **Orientation** — Portrait oder Landscape.
- **Font** — fest **Roboto** (die einzige eingebettete Schrift).
- **Font Size** — Basis-Schriftgröße in Punkt (6–72, Standard 12).
- **Margins** — Seitenränder oben/rechts/unten/links in Punkt (Standard je 40).

### Content Blocks

Über **Add Block** fügst du Bausteine hinzu. Jeder Block lässt sich nach oben/unten verschieben, **duplizieren**, löschen und einklappen:

- **Heading** — Überschrift mit Ebene H1–H4 (Schriftgrößen 24/20/16/14 pt) und Ausrichtung; immer fett.
- **Paragraph** — Fließtext mit Ausrichtung, eigener Schriftgröße sowie Fett- und Kursiv-Schalter.
- **Table** — bearbeitbares Raster; Schalter **First row is header**; Zeilen und Spalten per **Row**/**Col** ergänzen. Spalten werden gleich breit verteilt.
- **List** — Liste; Schalter **Ordered list** für nummeriert vs. Aufzählung; Einträge hinzufügen/entfernen (leere Einträge fallen beim Erzeugen weg).
- **Image** — ein Bild (PNG oder JPEG) einbetten; Breite in Punkt und Ausrichtung einstellbar.
- **Two Columns** — ein zweispaltiger Abschnitt mit linkem und rechtem Text.
- **Horizontal Rule** — eine Trennlinie über die Seitenbreite.
- **Page Break** — erzwingt an dieser Stelle einen Seitenumbruch.

### Erzeugen, Vorschau, Export

- **Generate PDF** rendert das Dokument; rechts erscheint die Vorschau, durch die du mit den Pfeil-Schaltflächen (Tooltip *Previous page* / *Next page*) blätterst.
- **Download** speichert das Ergebnis als `document.pdf`.
- **Export JSON** / **Import JSON** sichert bzw. lädt die komplette Dokumentdefinition (Einstellungen **und** Blöcke, inklusive eingebetteter Bilder) als `pdf-document.json`. So baust du Vorlagen, die du später wiederverwendest.
- **Clear All** verwirft alle Blöcke.

## Merge & Split

Zwei Unter-Tabs (Pills): **Merge** und **Split**, beide auf Basis von pdf-lib.

### Merge (Zusammenführen)

Zieh mehrere `.pdf`-Dateien in die Ablagezone (Nicht-PDFs werden mit Hinweis übersprungen). Die Tabelle zeigt pro Datei Nummer, Name, Seitenzahl und Größe. Über die Aktionsknöpfe **ordnest du die Reihenfolge** (nach oben/unten) oder entfernst eine Datei. **Merge All** fügt alle Seiten in genau dieser Reihenfolge zu einem Dokument zusammen — du brauchst mindestens zwei Dateien. Anschließend lädst du das Ergebnis über **Download Merged PDF** als `merged.pdf` herunter. **Clear All** leert die Liste.

### Split (Teilen)

Zieh eine einzelne `.pdf`-Datei in die Ablagezone; das Tool zeigt Name, Größe und Seitenzahl. Es gibt drei **Split Modes**:

- **Extract page ranges** — gib Seiten und Bereiche kommagetrennt ein, z. B. `1-3, 5, 8-10`. Daraus entsteht **eine** Datei mit genau diesen Seiten. Werte außerhalb des gültigen Bereichs werden ignoriert, Dubletten entfernt, die Seiten aufsteigend sortiert.
- **Split every N pages** — teilt das PDF in Blöcke zu je N Seiten; jeder Block wird eine eigene Datei.
- **Extract each page as single PDF** — löst jede Seite als einzelnes PDF heraus.

Das Ergebnis erscheint als Liste (jeweils mit Bezeichnung wie „Page 1" oder „Pages 1-3" und Seitenzahl). Jede Datei lädst du einzeln als `split_N.pdf` herunter.

## Convert

Vier Unter-Tabs (Pills): **Markdown**, **Images**, **Simple HTML** und **Rich HTML**. Merke dir den Kernunterschied: **Markdown und Simple HTML erzeugen durchsuchbaren Text**, **Rich HTML erzeugt ein gerastertes Bild-PDF**.

### Markdown → PDF

Ein ACE-Editor für Markdown (mit **Open File** für `.md`/`.markdown`/`.txt`, **Load Example** und **Clear**). Unterstützt werden Überschriften, **fett**, *kursiv*, `Inline-Code`, Aufzählungen und nummerierte Listen (auch verschachtelt), Code-Blöcke, Tabellen, Links, Zitate (Blockquote) und Trennlinien. Unter **Page Settings** stellst du Page Size (A4/A3/A5/Letter/Legal), Orientation, Font Size und Margin ein. **Generate PDF** rendert die Vorschau (mit Seiten-Navigation), **Download** speichert `markdown.pdf`. Das Ergebnis enthält echten Text — du kannst darin suchen und kopieren.

### Images → PDF

Zieh ein oder mehrere Bilder in die Ablagezone oder wähle sie aus. Unterstützte Formate: **JPG, PNG, WebP, GIF, BMP, TIFF**. PNG und JPEG werden direkt eingebettet; WebP, GIF, BMP und TIFF werden vorher über ein Canvas nach PNG umgewandelt (auf 4000 px begrenzt). Jedes Bild bekommt eine eigene Seite und wird **zentriert** platziert. Pro Bild und global wählst du einen **Fit Mode**:

- **Fit** — Seitenverhältnis erhalten, ins Seitenformat einpassen (Standard).
- **Fill** — formatfüllend skalieren, dabei beschneiden.
- **Stretch** — auf die Seitenfläche verzerren.

Unter **Page Settings** stellst du Größe, Ausrichtung, Rand und Default Fit ein. **Generate PDF** → **Download** speichert `images.pdf`.

### Simple HTML → PDF

Ein ACE-Editor für HTML. Unterstützt werden gängige Block- und Inline-Elemente: `p`, `h1`–`h6`, `ul`/`ol`/`li`, `strong`/`em`, `code`/`pre`, `table`, `br`, `hr`, `a` und `blockquote` (Container wie `div`/`section`/`article` werden durchlaufen). Das Markup wird in echten PDF-Text übersetzt — das Ergebnis ist **durchsuchbar**. **Styling per CSS wird hier ignoriert**; dafür ist *Rich HTML* da. Page Settings und Download (`html.pdf`) wie bei Markdown.

### Rich HTML → PDF

Ebenfalls ein ACE-Editor, aber mit anderem Ansatz: html2pdf.js rendert das HTML **visuell wie ein Browser** — inklusive CSS, Farben, Flexbox, Bildern und komplexen Layouts. Das Ergebnis ist allerdings **gerastert**: Die Seite wird als Bild ins PDF eingebettet, der **Text ist nicht auswählbar oder durchsuchbar**. Zusätzliche Option **Quality Scale**: 1× (schnell), 2× (Standard) oder 3× (hohe Qualität für den Druck). Der Rand wird hier in **mm** angegeben. Download als `rich-html.pdf`.

## Reference

Ein statisches Nachschlagewerk ohne Verarbeitung — immer nutzbar, auch ohne geladene Datei:

- **PDF Versions** — die Versionsgeschichte von PDF 1.0 (1993) bis 2.0 (2020, ISO 32000-2) mit den jeweiligen Neuerungen.
- **Page Sizes Reference** — A3 bis Executive in Millimeter, Zoll und Punkt.
- **Available Font** — die im Creator verfügbare Schrift (Roboto, in Regular/Medium/Italic/MediumItalic).
- **Creating Accessible PDFs** — Hinweise zu barrierefreien PDFs (Tagged PDF, Lesereihenfolge, Alt-Texte, Dokumentsprache, Lesezeichen, Farbkontrast, beschriftete Formularfelder, Unicode-Schriften).
- **Unit Conversions** — Umrechnung in Punkt (1 pt = 1/72 Zoll) für mm, cm, Zoll und Pixel.
- **Further Reading** — Verweise auf die PDF-Spezifikation (ISO 32000-1) und die genutzten Bibliotheken.

## Betriebsgrenzen und Datenschutz — kompakt

- **Privatsphäre:** Alles läuft lokal im Browser; nichts wird hochgeladen, kein Server sieht deine Dateien.
- **Größenlimit:** Dateien bis **50 MB** (Browser-Speicherschutz, kein Server-Limit).
- **Kein OCR:** Text-Extraktion und durchsuchbare Konvertierungen brauchen echten Text; reine Scans liefern keinen Text.
- **Rich HTML ist gerastert:** kein durchsuchbarer Text — für durchsuchbaren Text *Simple HTML* oder *Markdown* nutzen.
- **Eingebettete Schrift im Creator:** ausschließlich Roboto.
- **Bearbeitung speichern:** nur als lokaler Download (keine serverseitige Persistenz).

Für den Einstieg und das große Bild siehe die [Übersichtsseite](https://www.jpkc.com/db/tools/pdf/). Konkrete Durchläufe stehen in den [Beispielen](https://www.jpkc.com/db/tools/pdf/examples/). Ausprobieren kannst du alles direkt im [Tool](https://www.jpkc.com/tools/pdf/).

