default
Ein neutraler serifenloser Dokumentstil in 11 pt mit unterstrichenen Überschriften zweiter Ebene. Gut für Berichte, Exporte und alles, was einfach ordentlich aussehen soll.
Produkt
HTML to PDF API PDF Generation API Image Generation API PDF Template API URL to PDF API Markdown to PDF API EnterpriseAnwendungsfälle
Invoice PDF API Receipt Generation API Report Generation API Certificate Generation API Document Generation APIMarkdown to PDF API
Senden Sie Markdown und erhalten Sie ein sauberes PDF im Markenlook zurück, mit Tabellen, Fußnoten und Ihrem eigenen Theme. Gebaut für Dokus, Berichte und das Markdown, das Ihre KI-Funktionen ohnehin erzeugen.
Eine Markdown-zu-PDF-API wandelt Markdown-Text in ein formatiertes PDF um. Sie senden das Markdown in einer HTTP-Anfrage; der Dienst macht daraus HTML, legt ein Druck-Stylesheet mit Schriften, Rändern und Seitenzahlen darüber, rendert es in einer Browser-Engine und liefert das PDF zurück. Sie bekommen ein gestaltetes Dokument, ohne HTML zu schreiben oder selbst einen Konverter zu betreiben.
| Endpunkt | POST https://api.dynamicdocumentapi.com/v1/pdf/from-markdown |
|---|---|
| Markdown | CommonMark plus Tabellen, Durchstreichen, Aufgabenlisten, automatische Links und Fußnoten |
| Themes | default, github, academic, minimal oder none mit eigenem CSS |
| Variablen | Jinja-Vorlagen im Markdown, sobald Sie data senden |
| Rohes HTML | Standardmäßig aus (allow_raw_html); die Ausgabe wird immer bereinigt |
| Rendering-Engine | Engine 2026.4 auf Chromium (Chrome 153), dieselben Druckoptionen wie bei HTML zu PDF |
| Preis | Free: 50 Renderings/Monat. Bezahlt ab 15 €/Monat (jährlich abgerechnet) für 3.000 Renderings, automatisches Nachladen ab 6 € je 1.000 |
Senden Sie das Markdown als String, wählen Sie ein Theme und ergänzen Sie bei Bedarf CSS. Druckeinstellungen wie Papierformat, Ränder und eine Fußzeile mit Seitenzahl gehören in pdf, genau wie bei der HTML to PDF API.
curl https://api.dynamicdocumentapi.com/v1/pdf/from-markdown \
-H "Authorization: Bearer $DYNAMIC_DOCUMENT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"markdown": "# Q3 report\n\nRevenue grew **18%**.\n\n| Region | Q3 |\n|---|---|\n| US | 492 |",
"theme": "github",
"css": "h1 { color: #4751e9; }",
"pdf": {
"paper": { "size": "Letter" },
"footer": { "enabled": true, "right": "Page {{page}} of {{pages}}" }
},
"delivery": "binary"
}' \
--output report.pdf
// Node.js 18+: turn a Markdown file into a PDF
import { readFile, writeFile } from "node:fs/promises";
const markdown = await readFile("README.md", "utf8");
const res = await fetch("https://api.dynamicdocumentapi.com/v1/pdf/from-markdown", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.DYNAMIC_DOCUMENT_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({ markdown, theme: "github", delivery: "binary" }),
});
await writeFile("README.pdf", Buffer.from(await res.arrayBuffer()));
import os
import pathlib
import requests
markdown = pathlib.Path("README.md").read_text()
res = requests.post(
"https://api.dynamicdocumentapi.com/v1/pdf/from-markdown",
headers={"Authorization": f"Bearer {os.environ['DYNAMIC_DOCUMENT_API_KEY']}"},
json={"markdown": markdown, "theme": "github", "delivery": "binary"},
timeout=60,
)
res.raise_for_status()
pathlib.Path("README.pdf").write_bytes(res.content)
<?php
$markdown = file_get_contents('README.md');
$ch = curl_init('https://api.dynamicdocumentapi.com/v1/pdf/from-markdown');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . getenv('DYNAMIC_DOCUMENT_API_KEY'),
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'markdown' => $markdown,
'theme' => 'github',
'delivery' => 'binary',
]),
]);
file_put_contents('README.pdf', curl_exec($ch));
| Feld | Funktion |
|---|---|
markdown | Pflichtfeld. Der Markdown-Text. |
theme | default, github, academic, minimal oder none. |
css | Zusätzliches CSS über dem Theme oder mit none das ganze Stylesheet. |
data | JSON-Werte für {{ variables }} im Markdown. |
templating | Führt Jinja auf dem Markdown aus. Automatisch an, wenn data gesendet wird. |
allow_raw_html | Behält HTML-Tags, die im Markdown stehen. Standard false; die Ausgabe wird in jedem Fall bereinigt. |
pdf | Papier, Ränder, Kopf- und Fußzeile, Seitenzahlen, Lesezeichen, Metadaten. |
delivery | url (Standard, signierter Link), binary oder base64. |
Der Parser folgt CommonMark, der Spezifikation hinter GitHub, GitLab und den meisten Editoren, und ergänzt die Erweiterungen im GitHub-Stil, die in echten Dokumenten vorkommen. Wir nennen auch, was nicht eingebaut ist, damit Sie es vorher wissen.
| Syntax | Unterstützt |
|---|---|
| Überschriften, Absätze, Hervorhebungen, Listen, Zitate, Links, Bilder | Ja (CommonMark) |
| Tabellen mit Spaltenausrichtung | Ja |
Aufgabenlisten - [x] | Ja |
Durchstreichen ~~text~~ | Ja |
Fußnoten [^1] | Ja |
| Automatische Links für nackte URLs | Ja |
| Überschriften-Anker für Links und PDF-Lesezeichen | Ja, dazu Lesezeichen mit pdf.outline |
| Umzäunte Codeblöcke | Ja, in Festbreitenschrift, ohne farbige Hervorhebung |
| Mathematik (LaTeX), Mermaid-Diagramme | Nicht eingebaut; rendern Sie sie vorher als Bilder |
| Rohes HTML | Nur mit allow_raw_html, bereinigt |
Themes sind Druck-Stylesheets, abgestimmt auf Papier: gut lesbare Zeilenlängen, sinnvolle Überschriftengrößen, Tabellen, die nicht über die Seite hinauslaufen, und Ränder, die auf A4 und Letter passen.
Ein neutraler serifenloser Dokumentstil in 11 pt mit unterstrichenen Überschriften zweiter Ebene. Gut für Berichte, Exporte und alles, was einfach ordentlich aussehen soll.
Sieht aus wie eine gerenderte README auf einer Code-Plattform. Passt zu Entwicklerdokus, Changelogs und technischen Notizen.
Serifenschrift, Blocksatz mit Silbentrennung, breitere Ränder und automatisch nummerierte Abschnitte (1., 1.1, 1.2). Gemacht für Fachartikel, Forschungszusammenfassungen und lange Berichte.
Kompakt und einfarbig in 10 pt, mit viel Weißraum und Abschnittsüberschriften in Großbuchstaben. Für Briefe, Notizen und interne Dokumente.
Ergänzen Sie Markenfarben und Schriften mit css, oder setzen Sie theme auf none und schreiben Sie das ganze Stylesheet. Für ein Layout mit Deckblatt, Logo und rechtlicher Fußzeile rund um das Markdown betten Sie es in eine Markenvorlage ein: Markdown-Vorlagen werden wie HTML-Vorlagen gespeichert und versioniert, und der Filter markdown setzt Markdown in jede HTML-Vorlage ein.
Sprachmodelle antworten in Markdown: Überschriften, Aufzählungen, Tabellen und Fettdruck. Damit ist Markdown zu PDF der kürzeste Weg von einer KI-Funktion zu einem Dokument, das Kunden herunterladen, drucken oder ablegen können: ein erzeugter Bericht, eine Besprechungszusammenfassung, ein Angebotsentwurf, ein Recherche-Briefing.
markdown.data und verweisen Sie mit {{ variables }} darauf — so schreibt das Modell den Text und Ihr System liefert die Fakten.Dokumentation liegt ohnehin in Markdown vor. Erzeugen Sie bei jedem Release ein PDF-Handbuch aus denselben Dateien, legen Sie einer README eine PDF-Version zum Download bei oder lassen Sie Nutzer einen Wissensdatenbank-Artikel exportieren. Mit pdf.outline werden Überschriften zu PDF-Lesezeichen, und eine CSS-Regel wie h1 { break-before: page; } beginnt jedes Kapitel auf einer neuen Seite.
Markdown ist einer von vier Eingängen unserer PDF-Generierungs-API. Brauchen Sie ein Layout, das Markdown nicht ausdrücken kann, etwa mehrspaltige Seiten oder ein pixelgenaues Formular? Dann schreiben Sie HTML, mit derselben Engine und denselben Optionen.
Für größere Volumen siehe alle Tarife.
FAQ
CommonMark mit den Erweiterungen im GitHub-Stil: Tabellen, Durchstreichen, Aufgabenlisten, automatische Links und Fußnoten. Überschriften bekommen automatisch Anker-IDs. Syntaxhervorhebung, Mathematik und Mermaid-Diagramme sind nicht eingebaut.
Ja. Wählen Sie eines der Themes und ergänzen Sie Regeln in css, oder setzen Sie theme auf none und bringen Sie das komplette Stylesheet mit. Druckfunktionen wie @page-Ränder, Seitenumbrüche und Webfonts funktionieren wie in jedem HTML-Dokument.
Codeblöcke erscheinen in Festbreitenschrift mit dem Stil des Themes, aber ohne farbige Syntaxhervorhebung. Brauchen Sie Farben, heben Sie den Code auf Ihrer Seite hervor, etwa mit highlight.js oder Pygments, und senden Sie das entstandene HTML an den Endpunkt für HTML zu PDF.
Ja. Sprachmodelle schreiben standardmäßig Markdown, ihre Antworten lassen sich also unverändert senden. Rohes HTML im Markdown wird entfernt, solange Sie es nicht einschalten — das schützt das PDF vor Markup, zu dem das Modell verleitet wurde.
Nur wenn Sie allow_raw_html auf true setzen. Standardmäßig ist es aus, und auch eingeschaltet wird die Ausgabe bereinigt: Skripte und andere aktive Inhalte werden entfernt. In Ihrem Konto gespeicherte Markdown-Vorlagen lassen rohes HTML immer aus.
Ja. Senden Sie data mit der Anfrage, dann wird das Markdown zuerst als Jinja-Vorlage verarbeitet — {{ customer }} oder eine {% for %}-Schleife funktionieren genau wie in HTML-Vorlagen.
50 Renderings im Monat im Free-Tarif, ohne Kreditkarte, automatisches Nachladen in Bezahltarifen.
Kostenlos starten