# PDF-Dateien in Node.js erstellen
Das programmgesteuerte Erstellen von PDF-Dateien in Node.js erfordert eine Bibliothek, die das Rendering von HTML präzise handhabt, moderne CSS unterstützt und sauber in die asynchronen Muster von Node integriert. [IronPDF](https://ironpdf.com/nodejs/docs/) verwendet eine Chromium-basierte Rendering-Engine, um HTML-Inhalte in PDFs zu konvertieren, die dem Druckausgabebild von Chrome entsprechen und vollständiges CSS, Inline-JavaScript und responsive Layouts direkt unterstützen.
Diese Anleitung behandelt den vollständigen Workflow: Installation, Erzeugen von PDFs aus HTML-Strings, HTML-Dateien und URLs, Konfigurieren von Ausgabeeinstellungen und Anwenden von Unternehmensfunktionen wie Kopf- und Fußzeilen, digitalen Signaturen und Verschlüsselung.
*as-heading:2(Schnellstart: Ein PDF in Node.js erstellen)*
1. IronPDF über npm installieren: `npm install @ironsoftware/ironpdf`
2. `PdfDocument` von `@ironsoftware/ironpdf` importieren
3. `PdfDocument.fromHtml()` mit Ihrem HTML-Inhalt aufrufen
4. `.saveAs()` aufrufen, um die PDF-Datei auf die Festplatte zu schreiben
```nodejs
import { PdfDocument } from "@ironsoftware/ironpdf";
const pdf = await PdfDocument.fromHtml("<h1>Hello, PDF!</h1><p>Generated with IronPDF.</p>");
await pdf.saveAs("output.pdf");
```
Konfigurieren Sie `IronPdfEngine` für Ihre Plattform, bevor Sie in der Produktion laufen. Siehe die [IronPdfEngine-Einrichtungsanleitung](https://ironpdf.com/nodejs/get-started/use-ironpdfengine/) für Windows, Linux, macOS und Docker-Anleitungen.
<div class="hsg-featured-snippet">
<h3>Minimaler Arbeitsablauf (5 Schritte)</h3>
<ol>
<li>Installieren Sie IronPDF: <code>npm install @ironsoftware/ironpdf</code></li>
<li>Importieren Sie <code>PdfDocument</code> von <code>@ironsoftware/ironpdf</code></li>
<li>Erstellen Sie ein PDF mit <code>PdfDocument.fromHtml()</code>, <code>PdfDocument.fromFile()</code> oder <code>PdfDocument.fromUrl()</code></li>
<li>Wenden Sie optionale Einstellungen an: Papiergröße, Ränder, Kopfzeilen, Fußzeilen</li>
<li>Speichern Sie die Ausgabe mit <code>pdf.saveAs("output.pdf")</code></li>
</ol>
</div>
## Wie installiere ich IronPDF for Node.js?
Install the `@ironsoftware/ironpdf` package using [npm](https://www.npmjs.com/package/@ironsoftware/ironpdf). Das Paket funktioniert mit [Node.js](https://nodejs.org/) 12.0 oder höher und unterstützt sowohl ESM- als auch CommonJS-Modulformate.
```bash
//:path=/static-assets/pdf/content-code-examples/tutorials/nodejs-create-pdf/install.sh
npm install @ironsoftware/ironpdf
```
IronPDF for Node.js hängt von der IronPDF Engine-Binärdatei ab, die das zugrunde liegende chromiumbasierte Rendering handhabt. Die Engine wird beim ersten Start automatisch heruntergeladen, aber Sie können das plattformspezifische Paket vorab installieren, um Laufzeit-Downloads zu vermeiden. Dies ist nützlich in eingeschränkten Netzwerkumgebungen oder Docker-basierten CI-Pipelines:
<table class="content__data-table" data-content-table>
<caption>IronPDF Engine-Plattformpakete zur Vorinstallation in Offline- oder eingeschränkten Umgebungen</caption>
<thead>
<tr><th>Plattform</th><th>Paket</th></tr>
</thead>
<tbody>
<tr><td>Windows x64</td><td><code>@ironsoftware/IronPDF-engine-Windows-x64</code></td></tr>
<tr><td>T>Linux x64</td><td><code>@ironsoftware/IronPDF-engine-linux-x64</code></td></tr>
<tr><td>T>macOS x64</td><td><code>@ironsoftware/IronPDF-engine-macos-x64</code></td></tr>
<tr><td>T>macOS ARM</td><td><code>@ironsoftware/IronPDF-engine-macos-arm64</code></td></tr>
</tbody>
</table>
[[i:(Ein gültiger Lizenzschlüssel entfernt das Wasserzeichen aus den generierten PDFs. Wenden Sie es vor Ihrem ersten `PdfDocument` Aufruf an, indem Sie `IronPdfGlobalConfig.setConfig({ licenseKey: "YOUR-KEY" })` einstellen. Befolgen Sie die vollständigen [Einrichtungsanweisungen für den Lizenzschlüssel](https://ironpdf.com/nodejs/get-started/license-keys/).)]]
### Welche Systemvoraussetzungen gelten für IronPDF?
IronPDF for Node.js läuft auf Node.js 12.0 oder höher auf Windows, Linux, macOS und Docker-Umgebungen. Die Bibliothek unterstützt sowohl x64- als auch ARM64-Architekturen, was sie für lokale Entwicklung und containerisierte Bereitstellungen geeignet macht. Für Cloud-Umgebungen unterstützt IronPDF auch die Verbindung zu einer [Remote-IronPDF-Engine](https://ironpdf.com/nodejs/get-started/use-ironpdfengine/) anstelle des lokalen Betriebs der Engine.
<hr />
## Wie erstelle ich ein PDF aus HTML in Node.js?
Verwenden Sie `PdfDocument.fromHtml()`, um ein PDF aus einem HTML-String zu erstellen. Die Methode akzeptiert jeden gültigen HTML-Code, einschließlich Inline-`<style>` Blöcken, über CDN geladene externe Schriftarten und Layout-Systeme wie CSS Grid oder Flexbox. Der Chromium-Renderer löst alle Ressourcen, bevor das PDF generiert wird.
```nodejs
import { PdfDocument } from "@ironsoftware/ironpdf";
const htmlContent = `
<!DOCTYPE html>
<html>
<head>
<style>
body { font-family: Arial, sans-serif; margin: 0; padding: 0; }
.header { background: #2b4c8c; color: white; padding: 24px 32px; }
.header h1 { margin: 0; font-size: 22px; }
.body { padding: 32px; }
table { width: 100%; border-collapse: collapse; margin-top: 16px; }
th { background: #f0f4fb; text-align: left; padding: 8px 12px; }
td { padding: 8px 12px; border-bottom: 1px solid #e0e0e0; }
</style>
</head>
<body>
<div class="header"><h1>Invoice #INV-2025-0042</h1></div>
<div class="body">
<p>Date: ${new Date().toLocaleDateString()}</p>
<table>
<tr><th>Item</th><th>Qty</th><th>Unit Price</th><th>Total</th></tr>
<tr><td>IronPDF Enterprise License</td><td>1</td><td>$499.00</td><td>$499.00</td></tr>
<tr><td>Priority Support (1 year)</td><td>1</td><td>$199.00</td><td>$199.00</td></tr>
</table>
<p style="text-align:right; margin-top:16px;"><strong>Total: $698.00</strong></p>
</div>
</body>
</html>`;
// Generate the PDF from the HTML string
const pdf = await PdfDocument.fromHtml(htmlContent);
await pdf.saveAs("invoice.pdf");
```
`PdfDocument.fromHtml()` gibt eine `PdfDocument` Instanz zurück. Rufen Sie `saveAs()` mit dem gewünschten Ausgabepfad auf, um die Datei zu schreiben. Die Methode ist asynchron, also verwenden Sie `await` oder verketten Sie einen `.then()` Handler. Die Chromium-Engine handhabt das Laden von Schriften, externen Stylesheets und die Auflösung von Ressourcen, bevor die Ausgabe erfasst wird. Für weitere Muster siehe das [HTML-String-zu-PDF-Beispiel](https://ironpdf.com/nodejs/examples/using-html-to-create-a-pdf/).
### Wie erstelle ich ein PDF aus einer HTML-Datei?
Laden Sie eine bestehende `.html` Datei von der Festplatte mit `PdfDocument.fromFile()`. Dieser Ansatz funktioniert gut für vorlagenbasierte Dokumente, bei denen das HTML getrennt von der Anwendungslogik gepflegt wird.
```nodejs
import { PdfDocument } from "@ironsoftware/ironpdf";
// Load an HTML file and render it as a PDF
const pdf = await PdfDocument.fromFile("./templates/report-template.html");
await pdf.saveAs("./output/report.pdf");
```
Der Renderer löst relative Ressourcenpfade aus dem Verzeichnis der HTML-Datei, sodass lokale CSS- und Bildreferenzen ohne zusätzliche Konfiguration funktionieren. Sehen Sie sich das [HTML-Datei-zu-PDF-Beispiel](https://ironpdf.com/nodejs/examples/file-to-pdf/) für zusätzliche Optionen an, einschließlich wie man die Basis-URL für die Ressourcenauflösung überschreibt.
### Wie generiere ich ein PDF aus einer URL?
Verwenden Sie `PdfDocument.fromUrl()`, um eine Live-Webseite als PDF zu rendern. Der Renderer lädt die Seite als vollständige Browsersitzung, führt JavaScript aus, wendet CSS an und wartet auf dynamische Inhalte, bevor die Ausgabe erfasst wird.
```nodejs
import { PdfDocument } from "@ironsoftware/ironpdf";
// Render a live webpage to PDF
const pdf = await PdfDocument.fromUrl("https://ironpdf.com/nodejs/");
await pdf.saveAs("ironpdf-homepage.pdf");
```
Für Seiten, die Inhalte asynchron über JavaScript laden, kombinieren Sie dies mit einer `renderDelay` Option (in Millisekunden), um zusätzliche Zeit vor der Erfassung zu gewähren. Das [URL-zu-PDF-Beispiel](https://ironpdf.com/nodejs/examples/converting-a-url-to-a-pdf/) demonstriert die Verzögerungskonfiguration und Authentifizierungsheader.
<hr />
## Wie konfiguriere ich PDF-Ausgabeeinstellungen?
Übergeben Sie ein Konfigurationsobjekt als zweiten Argument an `PdfDocument.fromHtml()`, `PdfDocument.fromFile()` oder `PdfDocument.fromUrl()`. Das Konfigurationsobjekt akzeptiert Papiergröße, Ränder, Ausrichtung und Rendereinstellungen.
```nodejs
import { PdfDocument, PdfPaperSize } from "@ironsoftware/ironpdf";
const config = {
paperSize: PdfPaperSize.A4,
marginTop: 25,
marginBottom: 25,
marginLeft: 20,
marginRight: 20,
landscape: false,
printBackground: true,
};
const pdf = await PdfDocument.fromHtml("<h1>Configured PDF</h1>", config);
await pdf.saveAs("configured-output.pdf");
```
Wichtige Konfigurationsoptionen umfassen:
- `paperSize`: akzeptiert `PdfPaperSize` Enum-Werte (A4, Letter, Legal, und [benutzerdefinierte Größen](https://ironpdf.com/nodejs/examples/custom-pdf-paper-size/))
- `landscape`: `true` für [Seitenausrichtung](https://ironpdf.com/nodejs/examples/pdf-page-orientation/) im Querformat festlegen
- `printBackground`: CSS-Hintergrundfarben und -Bilder einbeziehen
- `marginTop/Bottom/Left/Right`: Seitenränder in Millimetern
- `renderDelay`: Millisekunden, die vor der Erfassung for JavaScript-intensiven Seiten gewartet werden sollen
### Wie füge ich Kopf- und Fußzeilen zu einem PDF hinzu?
Kopf- und Fußzeilen hinzufügen, indem die `htmlHeader` und `htmlFooter` Eigenschaften im Konfigurationsobjekt bereitgestellt werden. Beide akzeptieren vollständige HTML-Strings, sodass formatiertes Inhalte mit Seitennummern, Daten und dynamischen Texten möglich sind.
```nodejs
import { PdfDocument } from "@ironsoftware/ironpdf";
const config = {
htmlHeader: {
htmlFragment: "<div style='text-align:center; font-size:12px; color:#666;'>Quarterly Report - Confidential</div>",
dividerLine: true,
},
htmlFooter: {
htmlFragment: "<div style='text-align:right; font-size:10px;'>Page {page} of {total-pages}</div>",
dividerLine: true,
},
};
const pdf = await PdfDocument.fromHtml("<h1>Q3 Financial Summary</h1><p>See attached tables.</p>", config);
await pdf.saveAs("report-with-headers.pdf");
```
Verwenden Sie `{page}` und `{total-pages}` Tokens im Fußzeilen-HTML; IronPDF ersetzt die richtigen Werte zur Renderzeit. Für weitere Kopf- und Fußzeilenmuster, einschließlich [HTML-Kopf- und Fußzeilen](https://ironpdf.com/nodejs/examples/html-headers-and-footers/) und [fortgeschrittene Kopfzeilen-Techniken](https://ironpdf.com/nodejs/examples/adding-headers-and-footers-advanced/), siehe die verlinkten Beispiele.
<hr />
## Wie füge ich Sicherheit und Metadaten zu einem PDF hinzu?
Wenden Sie [Passwortschutz und Verschlüsselung](https://ironpdf.com/nodejs/examples/security-and-metadata/) auf ein generiertes PDF mithilfe der `PdfDocument` Sicherheitsmethoden an. Die Bibliothek unterstützt sowohl Besitzer- als auch Benutzerpasswörter, mit granularen Berechtigungskontrollen für Drucken, Kopieren und Bearbeiten.
```nodejs
import { PdfDocument } from "@ironsoftware/ironpdf";
const pdf = await PdfDocument.fromHtml("<h1>Confidential Document</h1>");
// Apply password protection with granular permissions
await pdf.securePdf({
userPassword: "view-password",
ownerPassword: "admin-password",
allowUserAnnotations: false,
allowUserPrinting: true,
allowUserCopyPasteContent: false,
});
await pdf.saveAs("secured-document.pdf");
```
[Verschlüsselung und Entschlüsselung](https://ironpdf.com/nodejs/examples/encryption-and-decryption/) verwenden standardmäßig AES 256-Bit-Verschlüsselung, wenn Passwörter angewendet werden. Für Dokumentenauthentifizierungs-Workflows unterstützt IronPDF auch [digitale Signaturen](https://ironpdf.com/nodejs/examples/digitally-sign-a-pdf/) mit X.509-Zertifikaten.
[[t:(Für Dokumente, die eine Langzeitarchivierungskompatibilität erfordern, verwenden Sie `PdfDocument.fromHtml()` gefolgt von der PDF/A-Konvertierungsmethode.] IronPDF unterstützt [PDF/A-Konformität](https://ironpdf.com/nodejs/examples/pdfa/) und [PDF/UA-Zugänglichkeitsstandards](https://ironpdf.com/nodejs/examples/pdfua/).)]]
<hr />
## Wie kann ich bestehende PDFs zusammenführen und manipulieren?
`PdfDocument` bietet Methoden zum Zusammenführen, Aufteilen und Bearbeiten bestehender PDF-Dateien. Laden Sie ein bestehendes PDF mit `PdfDocument.fromFile()` und verwenden Sie die Manipulationsmethoden, um Seiten hinzuzufügen oder zu entfernen, Inhalte zu stempeln oder Text zu ersetzen.
```nodejs
import { PdfDocument } from "@ironsoftware/ironpdf";
// Merge two PDF files into one
const merged = await PdfDocument.mergePdf([
await PdfDocument.fromFile("./report-part1.pdf"),
await PdfDocument.fromFile("./report-part2.pdf"),
]);
await merged.saveAs("./complete-report.pdf");
```
`PdfDocument.mergePdf()` akzeptiert ein Array von `PdfDocument` Instanzen und gibt ein einziges zusammengeführtes Dokument zurück. Die Seitenreihenfolge folgt der Array-Reihenfolge, sodass die Ausgabe die Sequenz der Eingabedateien bewahrt.
Andere häufige Bearbeitungsvorgänge:
- [Entfernen Sie eine Seite aus einem PDF](https://ironpdf.com/nodejs/examples/remove-page-from-pdf/) mit `removePages()`
- [Stempeln Sie HTML-Inhalte](https://ironpdf.com/nodejs/examples/stamping-new-content/) auf ein bestehendes Dokument
- [Finden und ersetzen Sie Text](https://ironpdf.com/nodejs/examples/replace-text-in-pdf/) auf allen Seiten
- [Extrahieren Sie Text aus einem PDF](https://ironpdf.com/nodejs/examples/reading-pdf-text/) für Indizierung oder Verarbeitung
Für hochvolumige Szenarien ermöglicht die[mehrfädige PDF-Generierung](https://ironpdf.com/nodejs/examples/threading/) die gleichzeitige Verarbeitung mehrerer Dokumente. [PDF-Komprimierung](https://ironpdf.com/nodejs/examples/pdf-compression/) reduziert Dateigrößen zur Speicherung und Übertragung.
<hr />
## Wie generiere ich PDFs für komplexe Inhalte wie Diagramme und Angular-Seiten?
IronPDF rendert Seiten mithilfe einer vollständigen Chromium-Browsersitzung, was bedeutet, dass JavaScript-Bibliotheken, die Diagramme, Grafiken oder Datenvisualisierungen erzeugen, korrekt gerendert werden, einschließlich [JavaScript-Diagrammbibliotheken](https://ironpdf.com/nodejs/examples/js-charts-to-pdf/). Einseitige Anwendungen, die mit Frameworks wie Angular erstellt wurden, lassen sich auch sauber mithilfe des [Angular zu PDF-Beispiels](https://ironpdf.com/nodejs/examples/angular-to-pdf/) konvertieren.
Für Unicode-reiche Dokumente oder mehrsprachige Ausgaben verarbeitet IronPDF [Unicode und internationale Zeichensätze](https://ironpdf.com/nodejs/examples/unicode/) ohne zusätzliche Konfiguration. Das [Google Fonts-Integrationsbeispiel](https://ironpdf.com/nodejs/examples/google-fonts-htmltopdf/) zeigt, wie Webfonts im gerenderten HTML für konsistente Typografie im Ausgabepdf geladen werden.
[[i:(IronPDFs Chromium-Renderer führt JavaScript vor der PDF-Erfassung aus. Wenn Ihre Diagramm-Bibliothek oder SPA zusätzliche Zeit zum Rendern von Daten benötigt, nachdem das DOM geladen wurde, setzen Sie `renderDelay` in Millisekunden, um der Seite Zeit zur vollständigen Darstellung zu geben.)]]
<hr />
## Was sind die nächsten Schritte zum Erstellen von PDFs in Node.js?
Diese Anleitung behandelte den Kernworkflow von IronPDF: Installation der Bibliothek, Erzeugung von PDFs aus HTML-Strings, Dateien und URLs, Konfigurieren der Ausgabeeinstellungen, Hinzufügen von Kopf- und Fußzeilen, Anwenden von Sicherheit und Bearbeiten bestehender PDFs.
Um fortzufahren, probieren Sie das vollständige [HTML zu PDF-Tutorial](https://ironpdf.com/nodejs/tutorials/html-to-pdf/) für eine umfassendere Einführung in die Rendering-Optionen oder durchsuchen Sie die [API-Referenz](https://ironpdf.com/nodejs/object-reference/api/) für die vollständige Liste der `PdfDocument` Methoden und Konfigurationseigenschaften.
[Starten Sie Ihre kostenlose Testversion](trial-license), um PDFs ohne Wasserzeichen zu generieren, oder [sehen Sie sich die Lizenzierungsoptionen an](licensing) für die Bereitstellung in der Produktion.
Das programmgesteuerte Erstellen von PDF-Dateien in Node.js erfordert eine Bibliothek, die das Rendering von HTML präzise handhabt, moderne CSS unterstützt und sauber in die asynchronen Muster von Node integriert. IronPDF verwendet eine Chromium-basierte Rendering-Engine, um HTML-Inhalte in PDFs zu konvertieren, die dem Druckausgabebild von Chrome entsprechen und vollständiges CSS, Inline-JavaScript und responsive Layouts direkt unterstützen.
Diese Anleitung behandelt den vollständigen Workflow: Installation, Erzeugen von PDFs aus HTML-Strings, HTML-Dateien und URLs, Konfigurieren von Ausgabeeinstellungen und Anwenden von Unternehmensfunktionen wie Kopf- und Fußzeilen, digitalen Signaturen und Verschlüsselung.
Schnellstart: Ein PDF in Node.js erstellen
IronPDF über npm installieren: npm install @ironsoftware/ironpdf
PdfDocument von @ironsoftware/ironpdf importieren
PdfDocument.fromHtml() mit Ihrem HTML-Inhalt aufrufen
.saveAs() aufrufen, um die PDF-Datei auf die Festplatte zu schreiben
import { PdfDocument } from "@ironsoftware/ironpdf";const pdf = awaitPdfDocument.fromHtml("<h1>Hello, PDF!</h1><p>Generated with IronPDF.</p>");await pdf.saveAs("output.pdf");
import { PdfDocument } from "@ironsoftware/ironpdf";
const pdf = await PdfDocument.fromHtml("<h1>Hello, PDF!</h1><p>Generated with IronPDF.</p>");
await pdf.saveAs("output.pdf");
JavaScript
Konfigurieren Sie IronPdfEngine für Ihre Plattform, bevor Sie in der Produktion laufen. Siehe die IronPdfEngine-Einrichtungsanleitung für Windows, Linux, macOS und Docker-Anleitungen.
Minimaler Arbeitsablauf (5 Schritte)
Installieren Sie IronPDF: npm install @ironsoftware/ironpdf
Importieren Sie PdfDocument von @ironsoftware/ironpdf
Erstellen Sie ein PDF mit PdfDocument.fromHtml(), PdfDocument.fromFile() oder PdfDocument.fromUrl()
Wenden Sie optionale Einstellungen an: Papiergröße, Ränder, Kopfzeilen, Fußzeilen
Speichern Sie die Ausgabe mit pdf.saveAs("output.pdf")
Wie installiere ich IronPDF for Node.js?
Install the @ironsoftware/ironpdf package using npm. Das Paket funktioniert mit Node.js 12.0 oder höher und unterstützt sowohl ESM- als auch CommonJS-Modulformate.
IronPDF for Node.js hängt von der IronPDF Engine-Binärdatei ab, die das zugrunde liegende chromiumbasierte Rendering handhabt. Die Engine wird beim ersten Start automatisch heruntergeladen, aber Sie können das plattformspezifische Paket vorab installieren, um Laufzeit-Downloads zu vermeiden. Dies ist nützlich in eingeschränkten Netzwerkumgebungen oder Docker-basierten CI-Pipelines:
IronPDF Engine-Plattformpakete zur Vorinstallation in Offline- oder eingeschränkten Umgebungen
Plattform
Paket
Windows x64
@ironsoftware/IronPDF-engine-Windows-x64
T>Linux x64
@ironsoftware/IronPDF-engine-linux-x64
T>macOS x64
@ironsoftware/IronPDF-engine-macos-x64
T>macOS ARM
@ironsoftware/IronPDF-engine-macos-arm64
Hinweis:: Ein gültiger Lizenzschlüssel entfernt das Wasserzeichen aus den generierten PDFs. Wenden Sie es vor Ihrem ersten PdfDocument Aufruf an, indem Sie IronPdfGlobalConfig.setConfig({ licenseKey: "YOUR-KEY" }) einstellen. Befolgen Sie die vollständigen Einrichtungsanweisungen für den Lizenzschlüssel.
Welche Systemvoraussetzungen gelten für IronPDF?
IronPDF for Node.js läuft auf Node.js 12.0 oder höher auf Windows, Linux, macOS und Docker-Umgebungen. Die Bibliothek unterstützt sowohl x64- als auch ARM64-Architekturen, was sie für lokale Entwicklung und containerisierte Bereitstellungen geeignet macht. Für Cloud-Umgebungen unterstützt IronPDF auch die Verbindung zu einer Remote-IronPDF-Engine anstelle des lokalen Betriebs der Engine.
Wie erstelle ich ein PDF aus HTML in Node.js?
Verwenden Sie PdfDocument.fromHtml(), um ein PDF aus einem HTML-String zu erstellen. Die Methode akzeptiert jeden gültigen HTML-Code, einschließlich Inline-<style> Blöcken, über CDN geladene externe Schriftarten und Layout-Systeme wie CSS Grid oder Flexbox. Der Chromium-Renderer löst alle Ressourcen, bevor das PDF generiert wird.
PdfDocument.fromHtml() gibt eine PdfDocument Instanz zurück. Rufen Sie saveAs() mit dem gewünschten Ausgabepfad auf, um die Datei zu schreiben. Die Methode ist asynchron, also verwenden Sie await oder verketten Sie einen .then() Handler. Die Chromium-Engine handhabt das Laden von Schriften, externen Stylesheets und die Auflösung von Ressourcen, bevor die Ausgabe erfasst wird. Für weitere Muster siehe das HTML-String-zu-PDF-Beispiel.
Wie erstelle ich ein PDF aus einer HTML-Datei?
Laden Sie eine bestehende .html Datei von der Festplatte mit PdfDocument.fromFile(). Dieser Ansatz funktioniert gut für vorlagenbasierte Dokumente, bei denen das HTML getrennt von der Anwendungslogik gepflegt wird.
import { PdfDocument } from "@ironsoftware/ironpdf";// Load an HTML file and render it as a PDFconst pdf = awaitPdfDocument.fromFile("./templates/report-template.html");await pdf.saveAs("./output/report.pdf");
import { PdfDocument } from "@ironsoftware/ironpdf";
// Load an HTML file and render it as a PDF
const pdf = await PdfDocument.fromFile("./templates/report-template.html");
await pdf.saveAs("./output/report.pdf");
JavaScript
Der Renderer löst relative Ressourcenpfade aus dem Verzeichnis der HTML-Datei, sodass lokale CSS- und Bildreferenzen ohne zusätzliche Konfiguration funktionieren. Sehen Sie sich das HTML-Datei-zu-PDF-Beispiel für zusätzliche Optionen an, einschließlich wie man die Basis-URL für die Ressourcenauflösung überschreibt.
Wie generiere ich ein PDF aus einer URL?
Verwenden Sie PdfDocument.fromUrl(), um eine Live-Webseite als PDF zu rendern. Der Renderer lädt die Seite als vollständige Browsersitzung, führt JavaScript aus, wendet CSS an und wartet auf dynamische Inhalte, bevor die Ausgabe erfasst wird.
import { PdfDocument } from "@ironsoftware/ironpdf";// Render a live webpage to PDFconst pdf = awaitPdfDocument.fromUrl("https://ironpdf.com/nodejs/");await pdf.saveAs("ironpdf-homepage.pdf");
import { PdfDocument } from "@ironsoftware/ironpdf";
// Render a live webpage to PDF
const pdf = await PdfDocument.fromUrl("https://ironpdf.com/nodejs/");
await pdf.saveAs("ironpdf-homepage.pdf");
JavaScript
Für Seiten, die Inhalte asynchron über JavaScript laden, kombinieren Sie dies mit einer renderDelay Option (in Millisekunden), um zusätzliche Zeit vor der Erfassung zu gewähren. Das URL-zu-PDF-Beispiel demonstriert die Verzögerungskonfiguration und Authentifizierungsheader.
Wie konfiguriere ich PDF-Ausgabeeinstellungen?
Übergeben Sie ein Konfigurationsobjekt als zweiten Argument an PdfDocument.fromHtml(), PdfDocument.fromFile() oder PdfDocument.fromUrl(). Das Konfigurationsobjekt akzeptiert Papiergröße, Ränder, Ausrichtung und Rendereinstellungen.
printBackground: CSS-Hintergrundfarben und -Bilder einbeziehen
marginTop/Bottom/Left/Right: Seitenränder in Millimetern
renderDelay: Millisekunden, die vor der Erfassung for JavaScript-intensiven Seiten gewartet werden sollen
Wie füge ich Kopf- und Fußzeilen zu einem PDF hinzu?
Kopf- und Fußzeilen hinzufügen, indem die htmlHeader und htmlFooter Eigenschaften im Konfigurationsobjekt bereitgestellt werden. Beide akzeptieren vollständige HTML-Strings, sodass formatiertes Inhalte mit Seitennummern, Daten und dynamischen Texten möglich sind.
Verwenden Sie {page} und {total-pages} Tokens im Fußzeilen-HTML; IronPDF ersetzt die richtigen Werte zur Renderzeit. Für weitere Kopf- und Fußzeilenmuster, einschließlich HTML-Kopf- und Fußzeilen und fortgeschrittene Kopfzeilen-Techniken, siehe die verlinkten Beispiele.
Wie füge ich Sicherheit und Metadaten zu einem PDF hinzu?
Wenden Sie Passwortschutz und Verschlüsselung auf ein generiertes PDF mithilfe der PdfDocument Sicherheitsmethoden an. Die Bibliothek unterstützt sowohl Besitzer- als auch Benutzerpasswörter, mit granularen Berechtigungskontrollen für Drucken, Kopieren und Bearbeiten.
import { PdfDocument } from "@ironsoftware/ironpdf";const pdf = awaitPdfDocument.fromHtml("<h1>Confidential Document</h1>");// Apply password protection with granular permissionsawait pdf.securePdf({ userPassword: "view-password", ownerPassword: "admin-password", allowUserAnnotations: false, allowUserPrinting: true, allowUserCopyPasteContent: false,});await pdf.saveAs("secured-document.pdf");
Verschlüsselung und Entschlüsselung verwenden standardmäßig AES 256-Bit-Verschlüsselung, wenn Passwörter angewendet werden. Für Dokumentenauthentifizierungs-Workflows unterstützt IronPDF auch digitale Signaturen mit X.509-Zertifikaten.
Tipps: Für Dokumente, die eine Langzeitarchivierungskompatibilität erfordern, verwenden Sie PdfDocument.fromHtml() gefolgt von der PDF/A-Konvertierungsmethode.] IronPDF unterstützt PDF/A-Konformität und PDF/UA-Zugänglichkeitsstandards.
Wie kann ich bestehende PDFs zusammenführen und manipulieren?
PdfDocument bietet Methoden zum Zusammenführen, Aufteilen und Bearbeiten bestehender PDF-Dateien. Laden Sie ein bestehendes PDF mit PdfDocument.fromFile() und verwenden Sie die Manipulationsmethoden, um Seiten hinzuzufügen oder zu entfernen, Inhalte zu stempeln oder Text zu ersetzen.
import { PdfDocument } from "@ironsoftware/ironpdf";// Merge two PDF files into oneconst merged = awaitPdfDocument.mergePdf([ awaitPdfDocument.fromFile("./report-part1.pdf"), awaitPdfDocument.fromFile("./report-part2.pdf"),]);await merged.saveAs("./complete-report.pdf");
import { PdfDocument } from "@ironsoftware/ironpdf";
// Merge two PDF files into one
const merged = await PdfDocument.mergePdf([
await PdfDocument.fromFile("./report-part1.pdf"),
await PdfDocument.fromFile("./report-part2.pdf"),
]);
await merged.saveAs("./complete-report.pdf");
JavaScript
PdfDocument.mergePdf() akzeptiert ein Array von PdfDocument Instanzen und gibt ein einziges zusammengeführtes Dokument zurück. Die Seitenreihenfolge folgt der Array-Reihenfolge, sodass die Ausgabe die Sequenz der Eingabedateien bewahrt.
Für hochvolumige Szenarien ermöglicht diemehrfädige PDF-Generierung die gleichzeitige Verarbeitung mehrerer Dokumente. PDF-Komprimierung reduziert Dateigrößen zur Speicherung und Übertragung.
Wie generiere ich PDFs für komplexe Inhalte wie Diagramme und Angular-Seiten?
IronPDF rendert Seiten mithilfe einer vollständigen Chromium-Browsersitzung, was bedeutet, dass JavaScript-Bibliotheken, die Diagramme, Grafiken oder Datenvisualisierungen erzeugen, korrekt gerendert werden, einschließlich JavaScript-Diagrammbibliotheken. Einseitige Anwendungen, die mit Frameworks wie Angular erstellt wurden, lassen sich auch sauber mithilfe des Angular zu PDF-Beispiels konvertieren.
Hinweis:: IronPDFs Chromium-Renderer führt JavaScript vor der PDF-Erfassung aus. Wenn Ihre Diagramm-Bibliothek oder SPA zusätzliche Zeit zum Rendern von Daten benötigt, nachdem das DOM geladen wurde, setzen Sie renderDelay in Millisekunden, um der Seite Zeit zur vollständigen Darstellung zu geben.
Was sind die nächsten Schritte zum Erstellen von PDFs in Node.js?
Diese Anleitung behandelte den Kernworkflow von IronPDF: Installation der Bibliothek, Erzeugung von PDFs aus HTML-Strings, Dateien und URLs, Konfigurieren der Ausgabeeinstellungen, Hinzufügen von Kopf- und Fußzeilen, Anwenden von Sicherheit und Bearbeiten bestehender PDFs.
Um fortzufahren, probieren Sie das vollständige HTML zu PDF-Tutorial für eine umfassendere Einführung in die Rendering-Optionen oder durchsuchen Sie die API-Referenz für die vollständige Liste der PdfDocument Methoden und Konfigurationseigenschaften.
Wie lassen sich PDF-Dateien am einfachsten in Node.js erstellen?
Installieren Sie IronPDF mit npm install @ironsoftware/ironpdf, dann rufen Sie PdfDocument.fromHtml() mit Ihrem HTML-Zeichenfolge auf und speichern Sie das Ergebnis mit saveAs(). Die Bibliothek kümmert sich automatisch um das gesamte Rendering.
Wie installiere ich IronPDF for Node.js?
Führen Sie npm install @ironsoftware/ironpdf in Ihrem Projektverzeichnis aus. Die IronPDF Engine-Binärdatei wird beim ersten Gebrauch automatisch heruntergeladen. Für Offline- oder CI-Umgebungen, installieren Sie das plattformspezifische Engine-Paket wie @ironsoftware/ironpdf-engine-linux-x64 separat.
Kann ich HTML in PDF konvertieren und dabei CSS-Stile und Formatierungen beibehalten?
Ja. IronPDF verwendet eine auf Chromium basierende Rendering-Engine, die alle CSS-Stile, externen Schriftarten und die JavaScript-Ausführung bei der Konvertierung von HTML zu PDF bewahrt. Die Ausgabe entspricht dem Druckvorschauverhalten von Chrome.
Welche PDF-Funktionen sind über die grundlegende HTML-Konvertierung hinaus verfügbar?
IronPDF unterstützt digitale Signaturen, AES 256-Bit-Verschlüsselung, Passwortschutz mit detaillierten Berechtigungen, benutzerdefinierte Kopf- und Fußzeilen mit Seitennummern-Tokens, PDF-Zusammenführung, Seitenentfernung, HTML-Stempelung, Textextraktion, PDF/A-Konformität und Multi-Threaded-Erstellung.
Wie erstelle ich ein PDF aus einer HTML-Datei auf der Festplatte?
Verwenden Sie PdfDocument.fromFile('./path/to/template.html'). Der Renderer löst relative Asset-Pfade aus dem Verzeichnis der HTML-Datei auf, sodass lokale CSS- und Bildreferenzen ohne zusätzliche Konfiguration funktionieren.
Kann ich Text aus bestehenden PDF-Dateien mit IronPDF extrahieren?
Ja. Laden Sie ein bestehendes PDF mit PdfDocument.fromFile() und verwenden Sie die Textextraktionsmethoden, um Inhalte von jeder Seite zu lesen. IronPDF unterstützt sowohl die Erstellung neuer PDFs als auch die Verarbeitung bestehender Dokumente.
Unterstützt IronPDF die Ausführung von JavaScript beim Rendern von HTML?
Ja. Der Chromium-Renderer führt JavaScript aus, bevor er das PDF aufnimmt. Für Seiten, die Inhalte asynchron laden, setzen Sie die renderDelay-Option in Millisekunden, um der Seite zusätzliche Zeit vor der Aufnahme zu geben.
Is it possible to apply digital signatures to PDFs with IronPDF?
Yes, IronPDF supports applying digital signatures to PDFs using X.509 certificates. This feature is useful for document authentication and secure workflows.
How does IronPDF handle complex content like charts in PDFs?
IronPDF uses a full Chromium browser session to render pages, which means JavaScript chart libraries and frameworks like Angular are fully supported. This allows charts, graphs, and other complex visualizations to render correctly in the output PDFs.
What are the system requirements for using IronPDF on Node.js?
IronPDF requires Node.js 12.0 or higher and runs on Windows, Linux, macOS, and Docker environments. It supports both x64 and ARM64 architectures, making it suitable for various deployment scenarios including local development and cloud environments.
Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender Handbücher.