IRONSOFTWAREHOME

Bilder einbetten mit DataURIs in C# & VB PDF Rendering

Curtis Chau
Curtis Chau
Updated: 4. Juni 2026

Binden Sie Bilder direkt in PDF-Dokumente ein, indem Sie DataURIs in C# und VB.NET mit IronPDF verwenden. Dadurch entfallen externe Dateiabhängigkeiten, indem Bildbytes in Base64-Strings umgewandelt und direkt im HTML-Markup eingebettet werden, um ein nahtloses PDF-Rendering zu ermöglichen.

Bei der Arbeit mit HTML-Strings und -Dokumenten ist die Vermeidung von Abhängigkeiten von Asset-Verzeichnissen oft unerlässlich. Das Daten-URI-Schema bietet eine effektive Lösung.

Das Daten-URI-Schema bettet die Daten direkt in den HTML- oder CSS-Code ein, sodass keine separaten Dateien erforderlich sind. DataURIs ermöglicht es, Bilder, Dateien und Schriftarten direkt als Zeichenfolge in ein HTML-Dokument einzufügen.

Schnellstart: Bilder mithilfe von DataURIs in PDFs einbetten

Verwandeln Sie HTML-Inhalte in PDF-Dokumente, indem Sie Bilder mit DataURIs unter Verwendung von IronPDF einbetten. Dieser Leitfaden zeigt, wie man PDFs mit eingebetteten Bildern mit einfachem, effizientem Code rendert. IronPDF konvertiert HTML in PDF, wobei die Bildintegrität erhalten bleibt. Hier ist ein einfaches Beispiel, das zeigt, wie Sie ein Bild mit minimalem Code direkt in Ihr PDF-Dokument einbetten können, indem Sie DataURI verwenden.

  1. 1Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. 2Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    new IronPdf.ChromePdfRenderer.StaticRenderHtmlAsPdf("<img src='data:image/png;base64,...' />").SaveAs("output.pdf");
    C#
  3. 3Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute, IronPDF in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion
    arrow pointer

Wie kann ich Bilder mit DataURIs in PDFs einbetten?

Das Einbetten von Bildern mit DataURIs umfasst das direkte Einschließen von Bildern innerhalb des HTML-Markups, ohne auf externe Dateien zu verweisen. Dieser Ansatz eignet sich gut für die Erstellung von PDFs in Cloud-Umgebungen, verteilten Systemen oder wenn sichergestellt werden soll, dass alle Ressourcen in sich geschlossen sind. IronPDFs HTML-zu-PDF-Konvertierung unterstützt vollständig DataURIs und ermöglicht so die Erstellung professioneller PDFs mit eingebetteten Bildern.

Der Prozess umfasst drei Schritte: das Lesen der Bilddaten, das Konvertieren in das Base64-Format und das Einbetten in ein HTML-img-Tag. Diese Methode funktioniert mit verschiedenen Bildformaten, darunter PNG, JPEG, GIF und SVG, und bietet Flexibilität bei der PDF-Erstellung. Die Technik bleibt gleich, egal ob mit Azure Blob Storage Images oder lokalen Dateien gearbeitet wird.

Grundlegendes Beispiel für die Einbettung von Bildern

Dieses vollständige Beispiel zeigt, wie ein Bild mithilfe von DataURIs in eine PDF-Datei eingebettet werden kann:

using IronPdf;
using System;

// Read byte from image file
var pngBinaryData = System.IO.File.ReadAllBytes("My_image.png");

// Convert bytes to base64
var ImgDataURI = @"data:image/png;base64," + Convert.ToBase64String(pngBinaryData);

// Import base64 to img tag
var ImgHtml = $"<img src='{ImgDataURI}'>";

ChromePdfRenderer Renderer = new ChromePdfRenderer();

// Render the HTML string
var pdf = Renderer.RenderHtmlAsPdf(ImgHtml);

pdf.SaveAs("datauri_example.pdf");

VB.NET-Entwickler können die gleiche Funktionalität mit der VB.NET-PDF-Bibliothek von IronPDF erreichen:

Imports IronPdf
Imports System

' Read byte from image file
Dim pngBinaryData As Byte() = System.IO.File.ReadAllBytes("My_image.png")

' Convert bytes to base64
Dim ImgDataURI As String = "data:image/png;base64," & Convert.ToBase64String(pngBinaryData)

' Import base64 to img tag
Dim ImgHtml As String = $"<img src='{ImgDataURI}'>"

Dim Renderer As New ChromePdfRenderer()

' Render the HTML string
Dim pdf = Renderer.RenderHtmlAsPdf(ImgHtml)

pdf.SaveAs("datauri_example.pdf")
VB .NET

Warum sollte ich DataURIs anstelle von Dateiverweisen verwenden?

DataURIs bietet mehrere Vorteile gegenüber herkömmlichen Dateireferenzen bei der PDF-Erstellung. Erstens beseitigen sie Abhängigkeiten von externen Dateien und machen die PDF-Erstellung zuverlässiger und portabler. Dies ist besonders wichtig in Cloud-Umgebungen wie Azure oder AWS Lambda, wo der Zugriff auf das Dateisystem begrenzt oder leistungsabhängig sein kann.

Zweitens stellt DataURIs sicher, dass PDFs vollständig eigenständig sind. Bei der Weitergabe oder Verteilung der generierten PDFs sind defekte Bildlinks oder fehlende Ressourcen kein Problem. Dies macht DataURIs ideal für die Erstellung von Berichten, Rechnungen oder Dokumenten, die archiviert oder per E-Mail versendet werden müssen.

Drittens kann DataURIs in bestimmten Szenarien die Leistung verbessern. Da die Bilddaten direkt in HTML eingebettet sind, fallen beim Rendern keine zusätzlichen HTTP-Anfragen oder Dateisystemoperationen an. Dies führt zu einer schnelleren PDF-Erzeugung, insbesondere bei der Bearbeitung mehrerer kleiner Bilder.

Welche Bildformate werden unterstützt?

IronPDF unterstützt alle gängigen Bildformate durch DataURIs und bietet Flexibilität in PDF-Generierungs-Workflows:

  • PNG: Ideal für Bilder mit Transparenz oder Grafiken mit scharfen Kanten. Verwenden Sie data:image/png;base64,
  • JPEG: Am besten geeignet für Fotos und komplexe Bilder mit vielen Farben. Verwenden Sie data:image/jpeg;base64,
  • GIF: Geeignet für einfache Animationen oder Bilder mit wenigen Farben. Verwenden Sie data:image/gif;base64,
  • SVG: Perfekt für skalierbare Vektorgrafiken. Verwenden Sie data:image/svg+xml;base64,
  • WebP: Modernes Format mit hervorragender Komprimierung. Verwenden Sie data:image/webp;base64,

Das folgende Beispiel zeigt, wie man mit verschiedenen Bildformaten umgeht:

using IronPdf;
using System;
using System.IO;

public class MultiFormatImageEmbedding
{
    public static void EmbedVariousImageFormats()
    {
        var renderer = new ChromePdfRenderer();
        
        // Function to create DataURI from image file
        string CreateDataUri(string filePath, string mimeType)
        {
            var imageBytes = File.ReadAllBytes(filePath);
            return $"data:{mimeType};base64,{Convert.ToBase64String(imageBytes)}";
        }
        
        // Create HTML with multiple image formats
        var html = $@"
        <html>
        <body>
            <h1>Multi-Format Image Test</h1>
            <img src='{CreateDataUri("logo.png", "image/png")}' alt='PNG Logo' />
            <img src='{CreateDataUri("photo.jpg", "image/jpeg")}' alt='JPEG Photo' />
            <img src='{CreateDataUri("icon.svg", "image/svg+xml")}' alt='SVG Icon' />
        </body>
        </html>";
        
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("multi_format_images.pdf");
    }
}

IronPDF bietet umfassende Unterstützung für fortgeschrittene Bildbearbeitung, einschließlich Hinzufügen von Bildern zu bestehenden PDFs.

Wie wirkt sich die Base64-Kodierung auf die Dateigröße aus?

Die Base64-Kodierung erhöht die Datengröße um etwa 33 %. Base64 stellt binäre Daten mit nur 64 ASCII-Zeichen dar, wobei 4 Zeichen für jeweils 3 Bytes der Originaldaten benötigt werden. Dadurch erhöht sich zwar der Gesamtumfang, aber die Auswirkungen auf die PDF-Erstellung sind im Vergleich zu den Vorteilen von in sich geschlossenen Dokumenten oft minimal.

Optimieren Sie die Dateigrößen bei der Verwendung von DataURIs, indem Sie diese Praktiken befolgen:

  1. Komprimieren Sie Bilder vor der Kodierung: Verwenden Sie Werkzeuge oder Bibliotheken zur Optimierung von Bilddateien vor der Konvertierung in Base64
  2. Wählen Sie geeignete Formate: Verwenden Sie JPEG für Fotos, PNG für Grafiken mit Transparenz
  3. Größe der Bilder angemessen ändern: Betten Sie keine größeren Bilder ein als für die PDF-Ausgabe erforderlich
  4. Komprimierung von PDF-Dateien in Betracht ziehen: Verwenden Sie die Komprimierungsfunktionen von IronPDF nach der Erstellung

Dieses Beispiel demonstriert die Bildoptimierung vor dem Einbetten:

using IronPdf;
using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;

public class OptimizedImageEmbedding
{
    public static void EmbedOptimizedImage(string imagePath, int maxWidth = 800)
    {
        // Load and resize image if necessary
        using (var originalImage = Image.FromFile(imagePath))
        {
            var resizedImage = originalImage;
            
            if (originalImage.Width > maxWidth)
            {
                var ratio = (double)maxWidth / originalImage.Width;
                var newHeight = (int)(originalImage.Height * ratio);
                resizedImage = new Bitmap(originalImage, maxWidth, newHeight);
            }
            
            // Convert to optimized JPEG
            using (var ms = new MemoryStream())
            {
                var encoder = ImageCodecInfo.GetImageEncoders()
                    .First(c => c.FormatID == ImageFormat.Jpeg.Guid);
                var encoderParams = new EncoderParameters(1);
                encoderParams.Param[0] = new EncoderParameter(
                    System.Drawing.Imaging.Encoder.Quality, 85L);
                
                resizedImage.Save(ms, encoder, encoderParams);
                var imageBytes = ms.ToArray();
                
                // Create DataURI
                var dataUri = $"data:image/jpeg;base64,{Convert.ToBase64String(imageBytes)}";
                
                // Generate PDF
                var html = $@"
                <html>
                <body>
                    <h1>Optimized Image Example</h1>
                    <img src='{dataUri}' style='max-width: 100%;' />
                </body>
                </html>";
                
                var renderer = new ChromePdfRenderer();
                var pdf = renderer.RenderHtmlAsPdf(html);
                pdf.SaveAs("optimized_image.pdf");
            }
            
            if (resizedImage != originalImage)
                resizedImage.Dispose();
        }
    }
}

Meine Lieblingsbibliothek dieser Art ist IronPDF. Es ermöglicht eine schnelle und effiziente Bearbeitung von PDF-Dateien. Es verfügt auch über viele wertvolle Funktionen, wie das Exportieren in das PDF/A-Format und das digitale Signieren von PDF-Dokumenten.

Milan Jovanovic

Microsoft MVP

Fallstudie ansehen

IronOCR bedeutet, dass wir jährlich 40.000 $ durch manuelle Verarbeitung einsparen können, während die Produktivität gesteigert wird und Ressourcen für wichtige Aufgaben freigesetzt werden. Ich würde es sehr empfehlen.

Brent Matzelle

Technischer Leiter, OPYN

Fallstudie ansehen

Die Iron Suite spielt eine entscheidende Rolle in unseren Operationen. Diese Werkzeuge erhöhen die Effizienz im gesamten Unternehmen, einschließlich der Erstellung von Grundrissen und der Verbesserung des Bestandsmanagements.

David Jones

Leitender Software-Ingenieur, Agorus Build

Fallstudie ansehen

Fortgeschrittene Techniken und bewährte Praktiken

Wenn Sie mit DataURIs in Produktionsumgebungen arbeiten, implementieren Sie Caching-Mechanismen, um zu vermeiden, dass die gleichen Bilder wiederholt kodiert werden. Dies ist besonders wichtig, wenn mehrere PDFs mit gemeinsamen Ressourcen erstellt werden. Nutzen Sie die async-Fähigkeiten von IronPDF für eine bessere Leistung bei der Verarbeitung mehrerer Bilder.

Für komplexe Dokumente mit vielen Bildern verwenden Sie einen hybriden Ansatz, bei dem kritische Bilder als DataURIs eingebettet werden, während größere, optionale Bilder extern referenziert werden. Dabei werden in sich geschlossene Dokumente mit angemessenen Dateigrößen berücksichtigt.

Mit der ASP.NET MVC-Integration von IronPDF können Sie auch einen ganzen HTML-String oder ein PDF-Dokument als Byte-Array bereitstellen. Diese Technik eignet sich gut für die Erstellung von Webanwendungen, die PDFs dynamisch erzeugen und bereitstellen.

Für fortgeschrittene PDF-Manipulationstechniken, einschließlich Wasserzeichen, digitale Signaturen und Formularerstellung, bietet IronPDF eine umfassende Dokumentation und Beispiele für die Erstellung robuster PDF-Lösungen.


Verwenden Sie die using IronPdf-Direktive, um das IronPdf-Namespace in Ihre C#- oder VB.NET-Projekte einzuschließen.

Die AddBookmarkAtEnd-Methode wird verwendet, um neue Lesezeichen zum PDF-Inhaltsverzeichnis hinzuzufügen.

Häufig gestellte Fragen

Was sind DataURIs und warum sollte man sie für die PDF-Erstellung verwenden?

DataURIs sind ein Schema, mit dem Daten direkt in HTML- oder CSS-Code als base64-kodierte Strings eingebettet werden, sodass keine separaten Bilddateien erforderlich sind. IronPDF unterstützt DataURIs in vollem Umfang und ist damit ideal für Cloud-Umgebungen, verteilte Systeme oder wenn Sie in sich geschlossene PDFs ohne externe Dateiabhängigkeiten benötigen.

Wie konvertiere ich ein Bild in ein DataURI-Format für die PDF-Einbettung?

Mit IronPDF umfasst die Konvertierung eines Bildes in DataURI drei Schritte: Erstens: Lesen der Bildbytes mit System.IO.File.ReadAllBytes(). Zweitens werden die Bytes mit Convert.ToBase64String() in base64 konvertiert. Schließlich wird der base64-String in ein HTML-img-Tag mit dem Format 'data:image/png;base64,[base64string]' eingebettet.

Welche Bildformate werden beim Einbetten von Bildern als DataURIs unterstützt?

IronPDF unterstützt die Einbettung verschiedener Bildformate als DataURIs, einschließlich PNG, JPEG, GIF und SVG. Diese Flexibilität ermöglicht es Ihnen, mit verschiedenen Bildtypen zu arbeiten und gleichzeitig die volle Kontrolle über den PDF-Generierungsworkflow zu behalten.

Kann ich mehrere Bilder mit DataURIs in eine einzige PDF-Datei einbetten?

Ja, IronPDF ermöglicht das Einbetten mehrerer Bilder mithilfe von DataURIs in ein einzelnes PDF-Dokument. Konvertieren Sie einfach jedes Bild in seine base64-Darstellung und fügen Sie es in Ihr HTML-Markup ein, bevor Sie es mit dem ChromePdfRenderer von IronPDF rendern.

Hat die Verwendung von DataURIs anstelle von Dateiverweisen Auswirkungen auf die Leistung?

Während DataURIs die Größe der HTML-Zeichenfolge aufgrund der base64-Kodierung erhöht, wickelt IronPDF die Konvertierung effizient ab. Der Kompromiss lohnt sich, wenn Sie in sich geschlossene PDFs ohne externe Abhängigkeiten benötigen, insbesondere in Cloud- oder verteilten Umgebungen.

What are the steps to convert an image to a DataURI for embedding?

To convert an image to a DataURI, read the image bytes using a method like ReadAllBytes, convert these bytes to a base64 string with ToBase64String, then form a DataURI by prepending the mime type, such as 'data:image/png;base64,'. Use this as the src in an HTML img tag within your PDF rendering code.

How can I optimize images when using DataURIs in PDFs?

Optimize images by compressing them before encoding to base64, choosing the appropriate image format, and resizing images to reduce unnecessary file size. Additionally, IronPDF's PDF compression features can help manage file sizes after generation.

Can I handle multiple image formats in a single PDF using DataURIs with IronPDF?

Yes, you can handle multiple image formats by creating DataURIs for each format and including them within an HTML document. IronPDF can render this HTML into a PDF, preserving each image format such as PNG, JPEG, and SVG within the same document.

What are the advantages of using IronPDF for embedding images with DataURIs?

IronPDF simplifies the process of embedding images with DataURIs by offering smooth conversion of HTML with inline images to PDFs. It supports reliable PDF generation, including advanced features like compression and dynamic content processing suitable for professional use.

How can I improve performance when generating PDFs with multiple images?

Improve performance by caching encoded DataURI images, using async capabilities, and considering a hybrid approach where critical images are embedded while larger images are referenced externally. This keeps PDFs efficient without compromising on essential embedded content.

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 Handbücher.

...
Weiterlesen

Bereit anzufangen?

Nuget Downloads 21,105,021Version:2026.9gerade veröffentlicht

Holen Sie sich Ihre KOSTENLOSE

30-Tage-Testlizenz sofort.

bullet_checkedKeine Kreditkarte oder Kontoerstellung erforderlich
bullet_testTesten Sie in der Produktion
ohne Wasserzeichen
bullet_calendar30 Tage voll
funktionsfähiges Produkt
bullet_support24/5 technischer
Support während der Testphase
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.
C# NuGet-Bibliothek für PDF
Installation mit NuGet

Version: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Rechtsklick auf Referenzen, NuGet-Pakete verwalten
  2. Wählen Sie Durchsuchen und suchen Sie nach 'IronPDF'
  3. Paket auswählen und installieren
C# PDF DLL
Download DLL

Version: 2026.9

oder laden Sie den Windows-Installer hier herunter.

  1. Laden Sie IronPDF herunter und entpacken Sie es in ein Verzeichnis wie ~/Libs innerhalb Ihres Lösungsverzeichnisses
  2. Im Visual Studio-Projektmappen-Explorer klicken Sie mit der rechten Maustaste auf Referenzen. Wählen Sie Durchsuchen, "IronPDF.dll"

Lizenzen ab 749 $

Key in blue circle

Holen Sie sich sofort Ihren kostenlosen 30-Tage-Testschlüssel.

Your trial license will be sent to your email address

Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.

OR
bullet_checkedIhr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
Buchen Sie Ihre kostenlose Live-Demo
Booking Badge

Von Millionen von Ingenieur*innen weltweit vertraut

Kundenlogos von Iron Software
Erhalten Sie Ihre unverbindliche Beratung
Füllen Sie das Formular unten aus oder senden Sie eine E-Mail an sales@ironsoftware.com
Ihre Daten werden immer vertraulich behandelt.
Von Millionen von Ingenieur*innen weltweit vertraut
Kundenlogos von Iron Software
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.
C# NuGet-Bibliothek für PDF
Installation mit NuGet

Version: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Rechtsklick auf Referenzen, NuGet-Pakete verwalten
  2. Wählen Sie Durchsuchen und suchen Sie nach 'IronPDF'
  3. Paket auswählen und installieren
C# PDF DLL
Download DLL

Version: 2026.9

oder laden Sie den Windows-Installer hier herunter.

  1. Laden Sie IronPDF herunter und entpacken Sie es in ein Verzeichnis wie ~/Libs innerhalb Ihres Lösungsverzeichnisses
  2. Im Visual Studio-Projektmappen-Explorer klicken Sie mit der rechten Maustaste auf Referenzen. Wählen Sie Durchsuchen, "IronPDF.dll"

Lizenzen ab 749 $