Festlegen von Schriftarten in PDFs
Ein Webfont ist eine spezielle Schriftart für die Verwendung auf Websites. Diese Schriftarten werden auf Webservern gehostet und von Webbrowsern heruntergeladen, um eine konsistente und optisch ansprechende Textdarstellung auf Websites zu gewährleisten, unabhängig von der Verfügbarkeit der lokalen Schriftart des Benutzers. Darüber hinaus werden Icon-Fonts, die Symbole und Glyphen verwenden, häufig im Webdesign eingesetzt, um skalierbare, anpassbare Icons zu erstellen und durch CSS-Manipulationen eine visuell einheitliche Benutzeroberfläche zu erhalten.
CSS enthält Web-Schriften, so dass Sie Schriftdateien angeben können, die beim Zugriff auf Ihre Website heruntergeladen werden. IronPDF unterstützt das Laden von Schriften und die Umwandlung von HTML in PDF.
Festlegen von Schriftarten in PDFs
- C#-Bibliothek IronPDF zum Einstellen von Schriftarten in PDFs herunterladen
- HTML verwenden, um Schriftarten aus einer externen Quelle zu importieren oder anzufordern
- Verzögern Sie den Rendering-Prozess, um ein ordnungsgemäßes Laden der Schriftart zu gewährleisten
- Rendering des HTML in PDF wie üblich
- Importieren einer Schriftdatei mit der @font-face-Regel im CSS-Styling
Erste Schritte mit IronPDF
Beginnen Sie noch heute mit der Verwendung von IronPDF in Ihrem Projekt mit einer kostenlosen Testversion.
WebFonts und Icons verwenden Beispiel
IronPDF unterstütztWebFonts (wie Google Fonts und die Adobe Web Font API) und Icon-Schriften, wie sie von Bootstrap undFontAwesome.
Schriftarten benötigen oft eine Verzögerung beim Rendern, um richtig geladen zu werden. Wenn eine Schriftart nicht korrekt geladen wird, kann dies zu einer leeren Seite ohne Text führen. Sie können die Methode WaitFor.AllFontsLoaded
verwenden, um auf die Schriftart zu warten, indem Sie ihr eine maximale Wartezeit zuweisen. Die maximale Wartezeit beträgt standardmäßig 500 ms.
Hier ist ein kleines Beispiel für die Verwendung einerWebFont namens Lobster in Ihrem Projekt.
:path=/static-assets/pdf/content-code-examples/how-to/webfonts-webicons-render-webfont.cs
using IronPdf;
// HTML contains webfont
var html = @"<link href=""https://fonts.googleapis.com/css?family=Lobster"" rel=""stylesheet"">
<p style=""font-family: 'Lobster', serif; font-size:30px;"" > Hello Google Fonts</p>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Wait for font to load
renderer.RenderingOptions.WaitFor.AllFontsLoaded(2000);
// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
// Export the PDF
pdf.SaveAs("font-test.pdf");
Imports IronPdf
' HTML contains webfont
Private html = "<link href=""https://fonts.googleapis.com/css?family=Lobster"" rel=""stylesheet"">
<p style=""font-family: 'Lobster', serif; font-size:30px;"" > Hello Google Fonts</p>"
Private renderer As New ChromePdfRenderer()
' Wait for font to load
renderer.RenderingOptions.WaitFor.AllFontsLoaded(2000)
' Render HTML to PDF
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
' Export the PDF
pdf.SaveAs("font-test.pdf")
Weitere WaitFor-Optionen, z. B. für Schriftarten, JavaScript, HTML-Elemente und Netzwerk-Idle, finden Sie auf der Website 'IronPDF WaitFor Klasse Dokumentation.'
Beispiel für den Import einer Schriftartdatei
Um eine vorhandene Schriftdatei zu verwenden, wenden Sie die@font-face regel im CSS-Styling. Es funktioniert auch, wenn eine Kombination aus der @font-face-Regel und dem Einbetten von base64-kodierten Woff-Dateien verwendet wird. Im folgenden Beispiel werde ich Folgendes verwendenPixelify Sans Schriftart.
:path=/static-assets/pdf/content-code-examples/how-to/webfonts-webicons-custom-font.cs
using IronPdf;
// Import custom font
string html = @"<!DOCTYPE html>
<html>
<head>
<style>
@font-face {font-family: 'Pixelify';
src: url('fonts\PixelifySans-VariableFont_wght.ttf');
}
p {
font-family: 'Pixelify';
font-size: 70px;
}
</style>
</head>
<body>
<p>Custom font</p>
</body>
</html>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
// Export the PDF
pdf.SaveAs("customFont.pdf");
Imports IronPdf
' Import custom font
Private html As String = "<!DOCTYPE html>
<html>
<head>
<style>
@font-face {font-family: 'Pixelify';
src: url('fonts\PixelifySans-VariableFont_wght.ttf');
}
p {
font-family: 'Pixelify';
font-size: 70px;
}
</style>
</head>
<body>
<p>Custom font</p>
</body>
</html>"
Private renderer As New ChromePdfRenderer()
' Render HTML to PDF
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
' Export the PDF
pdf.SaveAs("customFont.pdf")
Beschränkungen von Azure PDF
DieAzure-Hosting-Plattform unterstützt keine Server, die SVG-Schriften in ihren unteren gemeinsam genutzten Webanwendungsebenen laden. Die VPS- und Web-Rolle von Azure sind jedoch nicht auf dieselbe Weise sandboxed und unterstützen das Rendern von Webschriften.