Wie man HTML zu PDF mit .NET auf Azure generiert

How to Run HTML to PDF with .NET on Azure?

This article was translated from English: Does it need improvement?
Translated
View the article in English

Ja. IronPDF kann genutzt werden, um PDF-Dokumente auf Azure zu erzeugen, zu manipulieren und zu lesen. IronPDF wurde umfassend auf verschiedenen Azure-Plattformen getestet, darunter MVC-Websites, Azure Functions und viele mehr.

Wenn Sie Azure Functions innerhalb eines Docker-Containers betreiben, lesen Sie bitte stattdessen dieses Azure Docker Linux Tutorial.

Schnellstart: HTML-zu-PDF-Konvertierung mit IronPDF auf Azure

Beginnen Sie mühelos mit der Umwandlung von HTML in PDF in Ihren Azure-Anwendungen mit IronPDF. Dieser schnelle Leitfaden zeigt, wie man eine URL als PDF-Dokument mithilfe der effizienten API-Methoden von IronPDF rendert. Perfekt für Entwickler, die PDF-Fähigkeiten in ihre Azure-Lösungen integrieren möchten, zeigt dieses Beispiel die Einfachheit und Geschwindigkeit von IronPDF und stellt sicher, dass Ihre PDF-Erstellungsaufgaben nahtlos und zeiteffizient sind. Befolgen Sie das Beispiel, um mit der Generierung von PDFs zu beginnen, ohne das Format zu verlieren, und bringen Sie Ihr Azure-Projekt im Handumdrehen zum Laufen.

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. Copy and run this code snippet.

    var pdf = new IronPdf.ChromePdfRenderer()
        .RenderHtmlAsPdf("<h1>Hello Azure!</h1>")
        .SaveAs("output‑azure.pdf");
  3. Deploy to test on your live environment

    Start using IronPDF in your project today with a free trial
    arrow pointer
class="hsg-featured-snippet">

Minimaler Arbeitsablauf (5 Schritte)

  1. Installieren Sie die C#-Bibliothek zur PDF-Erstellung in Azure
  2. Wählen Sie die Azure Basic B1 Hosting-Ebene oder höher
  3. Deaktivieren Sie die Run from package file Option bei der Veröffentlichung
  4. Befolgen Sie die empfohlenen Konfigurationsanweisungen
  5. Verwenden Sie das Codebeispiel zum Erstellen eines PDF-Erzeugers mit Azure

class="main-content__segment-title">Tutorial

Einrichten Ihres Projekts

IronPDF installieren, um loszulegen

Der erste Schritt besteht darin, IronPDF mit NuGet zu installieren:

Install-Package IronPdf

Alternativ können Sie die .dll manuell über den Link IronPDF direct download package for Azure installieren.

Richtige Azure-Optionen auswählen

Auswahl der richtigen Hosting-Ebene Azure Tier

Azure Basic B1 ist die minimale Hosting-Stufe, die für die Rendering-Anforderungen unserer Endbenutzer erforderlich ist. Wenn Sie ein System mit hohem Durchsatz erstellen, muss dies möglicherweise aktualisiert werden.

WarnungDas Versäumnis, einen Plan Type von App service plan auszuwählen, kann dazu führen, dass IronPdf keine PDF-Dokumente rendert.

class="content-img-align-center">
class="center-image-wrapper"> Auswahl des richtigen Hosting-Levels Azure Tier

Das "Run from package file" Kontrollkästchen

Stellen Sie bei der Veröffentlichung Ihrer Azure Functions-Anwendung sicher, dass Run from package file NICHT ausgewählt ist.

class="content-img-align-center">
class="center-image-wrapper"> Deaktivieren Sie die Run from package file Option

Konfiguration für .NET 6

Microsoft hat kürzlich Bildbibliotheken aus .NET 6+ entfernt, was viele Legacy-APIs beeinträchtigt. Daher ist es notwendig, Ihr Projekt so zu konfigurieren, dass diese Legacy-API-Aufrufe weiterhin möglich sind.

  1. Auf Linux setzen Sie Installation.LinuxAndDockerDependenciesAutoConfig=true;, um sicherzustellen, dass libgdiplus auf dem Computer installiert ist
  2. Fügen Sie das folgende in die .csproj-Datei für Ihr .NET 6-Projekt ein:
    <GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
    <GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
    XML
  3. Erstellen Sie eine Datei in Ihrem Projekt mit dem Namen runtimeconfig.template.json und füllen Sie sie mit dem folgenden Inhalt:
{
  "configProperties": {
    "System.Drawing.EnableUnixSupport": true
  }
}
  1. Fügen Sie schließlich die folgende Zeile am Anfang Ihres Programms hinzu, um Unix-Unterstützung für System.Drawing zu aktivieren:
    System.AppContext.SetSwitch("System.Drawing.EnableUnixSupport", true);
    System.AppContext.SetSwitch("System.Drawing.EnableUnixSupport", true);
    System.AppContext.SetSwitch("System.Drawing.EnableUnixSupport", True)
    $vbLabelText   $csharpLabel

Verwendung von Docker auf Azure

Eine Möglichkeit zur Kontrolle, Zugriff auf SVG-Schriften und zur Steuerung der Leistung auf Azure ist die Nutzung von IronPDF-Anwendungen und -Funktionen innerhalb von Docker-Containern.

Wir haben ein umfassendes IronPDF Azure Docker Tutorial für Linux- und Windows-Instanzen, das als Lektüre empfohlen wird.

Azure Function Code Beispiel

Dieses Beispiel gibt automatisch Logeinträge an den eingebauten Azure-Logger aus (siehe ILogger log):

[FunctionName("PrintPdf")]
public static async Task<IActionResult> Run(
    [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
    ILogger log, ExecutionContext context)
{
    log.LogInformation("Entered PrintPdf API function...");

    // Apply license key
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

    // Configure logging
    IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.Custom;
    IronPdf.Logging.Logger.CustomLogger = log;
    IronPdf.Logging.Logger.EnableDebugging = false;

    // Configure IronPdf settings
    Installation.LinuxAndDockerDependenciesAutoConfig = false;
    Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;

    try
    {
        log.LogInformation("About to render pdf...");

        // Create a renderer and render the URL as PDF
        ChromePdfRenderer renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf("https://www.google.com/");

        log.LogInformation("Finished rendering pdf...");

        // Return the rendered PDF as a file download
        return new FileContentResult(pdf.BinaryData, "application/pdf") { FileDownloadName = "google.pdf" };
    }
    catch (Exception e)
    {
        log.LogError(e, "Error while rendering pdf");
    }

    return new OkObjectResult("OK");
}
[FunctionName("PrintPdf")]
public static async Task<IActionResult> Run(
    [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
    ILogger log, ExecutionContext context)
{
    log.LogInformation("Entered PrintPdf API function...");

    // Apply license key
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

    // Configure logging
    IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.Custom;
    IronPdf.Logging.Logger.CustomLogger = log;
    IronPdf.Logging.Logger.EnableDebugging = false;

    // Configure IronPdf settings
    Installation.LinuxAndDockerDependenciesAutoConfig = false;
    Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;

    try
    {
        log.LogInformation("About to render pdf...");

        // Create a renderer and render the URL as PDF
        ChromePdfRenderer renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf("https://www.google.com/");

        log.LogInformation("Finished rendering pdf...");

        // Return the rendered PDF as a file download
        return new FileContentResult(pdf.BinaryData, "application/pdf") { FileDownloadName = "google.pdf" };
    }
    catch (Exception e)
    {
        log.LogError(e, "Error while rendering pdf");
    }

    return new OkObjectResult("OK");
}
<FunctionName("PrintPdf")>
Public Shared Async Function Run(<HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route := Nothing)> ByVal req As HttpRequest, ByVal log As ILogger, ByVal context As ExecutionContext) As Task(Of IActionResult)
	log.LogInformation("Entered PrintPdf API function...")

	' Apply license key
	IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

	' Configure logging
	IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.Custom
	IronPdf.Logging.Logger.CustomLogger = log
	IronPdf.Logging.Logger.EnableDebugging = False

	' Configure IronPdf settings
	Installation.LinuxAndDockerDependenciesAutoConfig = False
	Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled

	Try
		log.LogInformation("About to render pdf...")

		' Create a renderer and render the URL as PDF
		Dim renderer As New ChromePdfRenderer()
		Dim pdf = renderer.RenderUrlAsPdf("https://www.google.com/")

		log.LogInformation("Finished rendering pdf...")

		' Return the rendered PDF as a file download
		Return New FileContentResult(pdf.BinaryData, "application/pdf") With {.FileDownloadName = "google.pdf"}
	Catch e As Exception
		log.LogError(e, "Error while rendering pdf")
	End Try

	Return New OkObjectResult("OK")
End Function
$vbLabelText   $csharpLabel

Bekannte Probleme

SVG-Schriftenrendering ist auf Shared-Hosting-Plänen nicht verfügbar

Ein Einschränkung besteht darin, dass die Azure-Hosting-Plattformübersicht keine Server unterstützt, die SVG-Schriften wie Google Fonts in ihren günstigeren Shared-Web-App-Ebenen laden. Dies liegt an Sicherheitsbeschränkungen, die den Zugriff auf Windows GDI+ Grafikobjekte verhindern.

Wir empfehlen die Verwendung eines Windows- oder Linux-Docker-Container-Leitfadens für IronPDF oder eventuell eines VPS auf Azure, um dieses Problem zu umgehen, wenn die beste Schriftenrendarbeitung erforderlich ist.

Azure-Freitierstufen-Hosting ist langsam

Azure Free und shared tiers sowie der Verbrauchsplan sind nicht geeignet für das PDF-Rendering. Wir empfehlen das Azure B1 Hosting/Premium-Plan, welches wir selbst verwenden. Der Prozess von HTML to PDF ist eine bedeutende 'Arbeit' für jeden Computer - ähnlich wie das Öffnen und Rendern einer Webseite auf Ihrem eigenen Computer. Ein echtes Browser-Engine wird verwendet, daher müssen wir entsprechend bereitstellen und ähnliche Renderzeiten wie bei einem Desktop-Rechner von ähnlicher Leistung erwarten.

Ein Support-Ticket für Technische Unterstützung erstellen

Um ein Support-Ticket zu erstellen, schauen Sie sich den How to Make an Engineering Support Request for IronPDF-Leitfaden an.

Häufig gestellte Fragen

Wie kann ich HTML in C# auf Azure in PDF umwandeln?

Sie können IronPDF verwenden, um HTML in PDF in Ihren Azure-Anwendungen zu konvertieren, indem Sie die RenderHtmlAsPdf-Methode verwenden. Dies ermöglicht es Ihnen, die Formatierung Ihrer HTML-Inhalte im erzeugten PDF beizubehalten.

Was sind die bewährten Verfahren für die Bereitstellung der PDF-Generierung in Azure Functions?

Wenn Sie die PDF-Erstellung in Azure Functions mit IronPDF bereitstellen, stellen Sie sicher, dass Sie die Bibliothek über NuGet installieren und vermeiden Sie die Auswahl der Option 'Aus Paketdatei ausführen' während der Veröffentlichung. Dies hilft, häufige Bereitstellungsprobleme zu vermeiden.

Kann ich IronPDF mit .NET 6 auf Azure verwenden?

Ja, Sie können IronPDF mit .NET 6 auf Azure verwenden. Fügen Sie <GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles> zu Ihrer .csproj-Datei hinzu und erstellen Sie eine runtimeconfig.template.json-Datei mit 'System.Drawing.EnableUnixSupport' auf true gesetzt.

Welche Hosting-Stufe wird für eine optimale PDF-Rendering-Leistung auf Azure empfohlen?

Für eine optimale PDF-Rendering-Leistung auf Azure mit IronPDF wird empfohlen, mindestens die Azure Basic B1 Hosting-Stufe zu verwenden oder auf eine höhere Stufe für Systeme mit hohem Durchsatz zu upgraden.

Gibt es Einschränkungen bei der Verwendung von IronPDF in den freigegebenen Hosting-Plänen von Azure?

Ja, SVG-Font-Rendering ist in den günstigeren freigegebenen Hosting-Plänen von Azure nicht verfügbar. Für besseres Font-Rendering und Leistung verwenden Sie Windows- oder Linux-Docker-Container oder einen VPS auf Azure.

Wie kann ich die PDF-Rendering-Leistung auf der kostenlosen Azure-Stufe verbessern?

Um die PDF-Rendering-Leistung über die Einschränkungen der kostenlosen Azure-Stufe hinaus zu verbessern, erwägen Sie, auf die Azure Basic B1 Hosting-Stufe oder höher zu upgraden. Dies mindert Leistungsengpässe, die mit der kostenlosen Stufe verbunden sind.

Welche bekannten Probleme gibt es bei der Verwendung von IronPDF auf Azure?

Zu den bekannten Problemen gehören Einschränkungen beim SVG-Font-Rendering auf freigegebenen Hosting-Plänen und Leistungsbedenken bei der kostenlosen Azure-Stufe. Die Verwendung von Docker-Containern kann helfen, diese Probleme zu mindern.

Wie kann ich Docker verwenden, um Azure Functions für die PDF-Generierung auszuführen?

Sie können Azure Functions innerhalb von Docker-Containern bereitstellen, um verbesserte Leistung und Kontrolle beim Generieren von PDFs mit IronPDF zu erhalten. Weitere Details finden Sie im Azure Docker Linux Tutorial.

Wie beantrage ich technischen Support für IronPDF auf Azure?

Um technischen Support für IronPDF auf Azure anzufordern, können Sie dem Leitfaden 'How to Make an Engineering Support Request for IronPDF' auf der IronPDF-Website folgen.

Ist es möglich, SVG-Schriften bei der Verwendung von Docker auf Azure zu nutzen?

Ja, die Verwendung von Docker auf Azure ermöglicht den Zugriff auf SVG-Schriften, was die Rendering-Leistung und -Qualität der mit IronPDF generierten PDFs verbessert.

Curtis Chau
Technischer Autor

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 ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 16,154,058 | Version: 2025.11 gerade veröffentlicht