Jak dodawać obrazy do plików PDF w języku C# za pomocą IronPDF
IronPDF umożliwia osadzanie obrazów bezpośrednio w plikach PDF poprzez konwersję kodu HTML zawierającego tagi obrazów do dokumentów PDF, tworząc samodzielne pliki, które wyświetlają obrazy bez zewnętrznych zależności lub połączeń internetowych.
Szybki start: Łatwe osadzanie obrazów w plikach PDF
Zacznij osadzać obrazy w plikach PDF za pomocą IronPDF w .NET C#. Przekonwertuj obraz na ciąg znaków Base64 i osadź go w tagu HTML <img>, aby wygenerować samodzielny plik PDF, który nie wymaga żadnych plików zewnętrznych. Ta metoda gwarantuje wyświetlanie obrazów bez dostępu do Internetu.
-
Install IronPDF with NuGet Package Manager
PM > Install-Package IronPdf -
Skopiuj i uruchom ten fragment kodu.
new IronPdf.ChromePdfRenderer() .RenderHtmlAsPdf("<img src='data:image/png;base64," + Convert.ToBase64String(File.ReadAllBytes("logo.png")) + "'>") .SaveAs("image-embedded.pdf"); -
Wdrożenie do testowania w środowisku produkcyjnym
Rozpocznij używanie IronPDF w swoim projekcie już dziś z darmową wersją próbną
Minimalny proces (5 kroków)
- [Download the IronPDF C# library](https://www.nuget.org/packages/IronPdf/)
- Przygotuj plik graficzny do osadzenia
- Użyj tagu
img,aby osadzić obrazy w HTML - Renderuj HTML do formatu PDF za pomocą metody
RenderHtmlAsPdf - Osadź obraz przy użyciu kodowania Base64
Jak osadzić obrazy w plikach PDF?
Aby osadzić obraz w pliku PDF, najpierw należy umieścić go w kodzie HTML za pomocą tagu <img>. Następnie użyj metody RenderHtmlAsPdf, aby przekonwertować HTML na PDF. Jeśli masz istniejący PDF, opieczętuj obraz na dokumencie PDF, używając tutorialu dla pieczętarki obrazów lub HTML. To podejście działa z silnikiem renderującym IronPDF dla przeglądarki Chrome.
Dlaczego metoda RenderHtmlAsPdf działa najlepiej?
Metoda RenderHtmlAsPdf wykorzystuje silnik renderujący IronPDF dla przeglądarki Chrome do konwersji treści HTML, w tym obrazów, do formatu PDF przy zachowaniu układu i stylów. Ta metoda obsługuje responsywne układy CSS i zapewnia, że obrazy są renderowane tak, jak wyglądają w przeglądarce internetowej. W przypadku złożonych układów graficznych zapoznaj się z naszym przewodnikiem dotyczącym formatowania HTML z zachowaniem idealnej dokładności pikselowej.
Jakie formaty obrazów są obsługiwane?
IronPDF obsługuje wszystkie główne formaty obrazów, w tym PNG, JPG, SVG, GIF i BMP, podczas osadzania poprzez konwersję HTML. Biblioteka skutecznie obsługuje grafikę SVG, umożliwiając tworzenie skalowalnych ilustracji wektorowych. Podczas pracy z różnymi formatami upewnij się, że kod HTML prawidłowo określa typ obrazu w atrybucie src lub w URI danych Base64.
Kiedy należy używać bezpośredniego adresu URL, a kiedy kodowania Base64?
W przypadku obrazów hostowanych online, gdy rozmiar pliku ma znaczenie, należy używać bezpośrednich adresów URL. Wybierz kodowanie Base64 dla samodzielnych plików PDF, które nie wymagają dostępu do Internetu. W przypadku obrazów przechowywanych w usługach chmurowych zapoznaj się z naszym przewodnikiem dotyczącym osadzania obrazów z usługi Azure Blob Storage. Decyzja ta ma wpływ zarówno na rozmiar pliku, jak i na przenośność wygenerowanych plików PDF.
:path=/static-assets/pdf/content-code-examples/how-to/add-images-to-pdfs-embed-image.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
string html = @"<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>";
// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
// Export PDF
pdf.SaveAs("embedImage.pdf");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private html As String = "<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>"
' Render HTML to PDF
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
' Export PDF
pdf.SaveAs("embedImage.pdf")
Jak osadzić obrazy przy użyciu Base64?
Aby użyć Base64 do osadzenia obrazu w HTML, najpierw należy uzyskać dane binarne obrazu poprzez odczytanie pliku obrazu lub otrzymanie go poprzez żądanie sieciowe. Należy użyć metody Convert.ToBase64String w .NET do konwersji danych binarnych na Base64. Należy skonstruować tag obrazu w HTML, używając "data:image/svg+xml;base64," przed danymi Base64. Należy pamiętać, że typ obrazu jest określony przed danymi Base64. Więcej informacji na temat typów formatów obrazów można znaleźć w dokumentacji MDN Web Docs poświęconej formatom obrazów.
Dłączego warto stosować kodowanie Base64 w przypadku obrazów?
Kodowanie Base64 tworzy samodzielne pliki PDF, które nie są zależne od zasobów zewnętrznych, zapewniając wyświetlanie obrazów nawet bez połączenia z Internetem lub w przypadku przeniesienia lub usunięcia oryginalnych plików graficznych. Technika ta jest przydatna podczas tworzenia plików PDF w aplikacjach Blazor Server lub podczas wdrażania w Azure, gdzie dostęp do plików zewnętrznych może być ograniczony. Zakodowane obrazy stają się częścią ciągu HTML, co sprawia, że idealnie nadają się do konwersji ciągów HTML do formatu PDF.
Jakie są kwestie związane z wydajnością?
Kodowanie Base64 zwiększa rozmiar pliku o około 33%, ale eliminuje zależności zewnętrzne, dzięki czemu idealnie nadaje się do celów archiwizacji lub w środowiskach sieciowych o ograniczonym dostępie. Gdy wydajność ma kluczowe znaczenie, warto rozważyć wykorzystanie asynchronicznego generowania plików PDF w celu jednoczesnej obsługi wielu konwersji obrazów. W przypadku operacji na dużą skalę zapoznaj się z naszym przewodnikiem po optymalizacji wydajności, aby zmaksymalizować przepustowość.
Jak radzić sobie z dużymi plikami graficznymi?
W przypadku dużych obrazów należy je skompresować przed kodowaniem Base64, aby zminimalizować rozmiar pliku PDF, lub użyć zewnętrznych adresów URL, jeśli rozmiar pliku ma kluczowe znaczenie. IronPDF oferuje funkcje kompresji plików PDF, które pozwalają zmniejszyć rozmiar plików nawet o 75%. W przypadku pracy z wieloma obrazami należy zoptymalizować ustawienia renderowania, aby uzyskać najlepszy kompromis między jakością a rozmiarem pliku.
:path=/static-assets/pdf/content-code-examples/how-to/add-images-to-pdfs-base64-image.cs
using IronPdf;
using System;
using System.IO;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Import image file binary data
byte[] binaryData = File.ReadAllBytes("ironpdf-logo-text-dotnet.svg");
// Convert the binary data to base 64
string imgDataUri = Convert.ToBase64String(binaryData);
// Embed in HTML
string html = $"<img src='data:image/svg+xml;base64,{imgDataUri}'>";
// Convert HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
// Export the PDF
pdf.SaveAs("embedImageBase64.pdf");
Imports IronPdf
Imports System
Imports System.IO
Private renderer As New ChromePdfRenderer()
' Import image file binary data
Private binaryData() As Byte = File.ReadAllBytes("ironpdf-logo-text-dotnet.svg")
' Convert the binary data to base 64
Private imgDataUri As String = Convert.ToBase64String(binaryData)
' Embed in HTML
Private html As String = $"<img src='data:image/svg+xml;base64,{imgDataUri}'>"
' Convert HTML to PDF
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
' Export the PDF
pdf.SaveAs("embedImageBase64.pdf")
Gotowy, aby sprawdzić, co jeszcze możesz zrobić? Zapoznaj się z naszą stroną z samouczkami tutaj: Dodatkowe funkcje
Często Zadawane Pytania
Jak mogę dodać obrazy do dokumentów PDF w C#?
Za pomocą IronPDF możesz dodawać obrazy do PDF, włączając je do HTML używając tagu , a następnie konwertując HTML na PDF używając metody RenderHtmlAsPdf. Podejście to wykorzystuje silnik renderujący Chrome IronPDF do dokładnego renderowania obrazów w dokumentach PDF.
Jakie formaty obrazów mogę osadzać w PDF?
IronPDF obsługuje wszystkie główne formaty obrazów, w tym PNG, JPG, SVG, GIF i BMP podczas osadzania przez konwersję HTML. Biblioteka szczególnie dobrze radzi sobie z grafiką SVG dla skalowalnych ilustracji wektorowych, zapewniając, że twoje obrazy zostaną poprawnie wyrenderowane w wygenerowanym PDF.
Czy powinienem używać bezpośrednich URL-i czy kodowania Base64 dla obrazów?
Używaj bezpośrednich URL-i, gdy obrazy są hostowane online, a rozmiar pliku jest istotny. Wybierz kodowanie Base64 z IronPDF, gdy tworzysz samodzielne PDF, które nie wymagają dostępu do Internetu. Kodowanie Base64 zapewnia, że twoje PDF wyświetlają obrazy bez zewnętrznych zależności.
Czy mogę dodać obrazy do istniejących plików PDF?
Tak, IronPDF pozwala dodawać obrazy do istniejących PDF za pomocą stempla obrazu lub stempla HTML. Funkcja ta umożliwia nakładanie obrazów na określone strony lub pozycje w twoich istniejących dokumentach PDF.
Jak przekonwertować obraz na Base64 do osadzania w PDF?
Przekształć swój obraz w ciąg Base64 i osadź go bezpośrednio w tagu HTML używając URI danych. Metoda RenderHtmlAsPdf IronPDF następnie przetworzy ten obraz zakodowany Base64 i osadzi go w twoim PDF, tworząc samodzielny dokument.
Czy osadzanie obrazu zachowuje stylizację i układy CSS?
Tak, silnik renderujący Chrome IronPDF zachowuje układy i stylizację CSS przy konwersji HTML z obrazami na PDF. Biblioteka obsługuje responsywne układy CSS, zapewniając, że obrazy są renderowane dokładnie tak, jak wyglądają w przeglądarce internetowej.

