Signatur
Beschreibung
CommonMark\Render\Latex nimmt ein geparsten CommonMark-Dokumentknoten (vom Typ CommonMark\Node\Document) entgegen und wandelt dessen Inhalt in LaTeX-Markup um. Die Funktion gehört zur CommonMark-Erweiterung für PHP, die das CommonMark-Subset von Markdown verarbeitet.
Dies ist nützlich, wenn Markdown-Inhalte für den Satz in LaTeX (z. B. für PDF-Erzeugung über pdflatex oder xelatex) aufbereitet werden sollen. Typischerweise wird zuerst mit CommonMark\Parse ein Dokument geparst und anschließend mit dieser Funktion in das Zielformat gerendert.
Neben Latex bietet die CommonMark-Erweiterung weitere Renderer wie CommonMark\Render\Html, CommonMark\Render\XML und CommonMark\Render\Man. Die Wahl des Renderers hängt vom gewünschten Ausgabeformat ab.
- Eignet sich für wissenschaftliche Dokumentation, technische Berichte oder Bücher.
- Gibt valides LaTeX zurück, das direkt in eine
.tex-Datei geschrieben werden kann.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $document Pflicht | CommonMark\Node\Document | Ein zuvor mit CommonMark\Parse erzeugter Dokumentknoten, der die geparste CommonMark-Baumstruktur repräsentiert. |
Rückgabewert
string zurück, der dem CommonMark-Inhalt des übergebenen Dokumentknotens entspricht.Beispiele
Einfaches Markdown-Dokument als LaTeX rendern
<?php
// Markdown-Text parsen
$markdown = "# Überschrift\n\nDies ist ein **fetter** Absatz mit `Code`.\n\n- Punkt 1\n- Punkt 2";
$document = CommonMark\Parse($markdown);
// Als LaTeX rendern
$latex = CommonMark\Render\Latex($document);
echo $latex;
LaTeX-Ausgabe in Datei schreiben
<?php
$markdown = file_get_contents('dokument.md');
$document = CommonMark\Parse($markdown);
$latex = CommonMark\Render\Latex($document);
// LaTeX-Ausgabe als .tex-Datei speichern
file_put_contents('dokument.tex', $latex);
echo "LaTeX-Datei wurde erfolgreich erstellt.\n";
// Wichtig · Fallstricke
Hinweis zur Verfügbarkeit: Die CommonMark-Erweiterung (ext-commonmark) muss als PECL-Erweiterung installiert sein. Sie ist nicht standardmäßig in PHP enthalten. Installation über pecl install commonmark.
Sonderzeichen: Markdown-Inhalte mit LaTeX-spezifischen Sonderzeichen (z. B. %, &, _ außerhalb von Code-Blöcken) können je nach Renderer-Implementierung zu unerwarteten LaTeX-Fehlern führen. Es empfiehlt sich, die Ausgabe vor dem Kompilieren zu prüfen.
Die Funktion wirft eine CommonMark\Exception\InvalidArgumentException, wenn der übergebene Knoten kein gültiges Document-Objekt ist.