iTextSharp: Dodaj obraz do PDF
RenderHtmlFileAsPdf robi jedno: pobiera plik HTML z dysku i renderuje go do PDF-a za pomocą silnika Chrome. Co wyświetla się poprawnie w Chrome, trafia poprawnie do dokumentu, z pełnym wsparciem dla CSS3, JavaScript, obrazów i czcionek. Jedynym liczącym się rozroznieniem jest wejście. Ta metoda czyta plik, wiec względne ścieżki do zasobów (logotypy, arkusze stylów, czcionki) rozwiazuja się z lokalizacji samego pliku, nie potrzeba bazowego URL-a. To decyduje, gdzie to najlepiej pasuje.
Tworzenie dokumentów oparte na szablonach
Przechowuj szablon HTML w swoim projekcie (faktura, oferta, certyfikat, kontrakt), uzupełniaj go, zapisz na dysku i renderuj:
using IronPdf;
var renderer = new ChromePdfRenderer();
renderer.RenderHtmlFileAsPdf("templates/invoice-1042.html")
.SaveAs("invoice-1042.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
renderer.RenderHtmlFileAsPdf("templates/invoice-1042.html")
.SaveAs("invoice-1042.pdf");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
renderer.RenderHtmlFileAsPdf("templates/invoice-1042.html").SaveAs("invoice-1042.pdf")
Ponieważ źródłem jest prawdziwy plik, ./logo.png i styles.css rozwiązują się naturalnie razem z nim.
Renderowanie wyjściowego i statycznie ulozonego serwisu
Generatory stron statycznych, potoki Markdown i narzędzia do tworzenia dokumentacji wszyscy produkują pliki HTML. Wskaz IronPDF na wyjście, aby zamienić opublikowaną stronę w archiwalny plik PDF, bez potrzeby ponownego pobierania go przez HTTP.
Układy autorskie projektu
Projektant przekazuje kompletny plik HTML i CSS; renderujesz go takim jaki jest. Chrome napedza konwersje, wiec przeglad interfejsu projektanta w przegladarce odpowiada PDF-owi, co eliminuje calą klase sporów "wygladało dobrze przy projekcie".
Przetwarzanie wsadowe folderu
Metoda jest jedno wywolanie na plik, wiec konwersja katalogu z raportami lub materiałami do rozdania to krotka petla:
var renderer = new ChromePdfRenderer();
foreach (string file in Directory.GetFiles("reports", "*.html"))
{
string output = Path.ChangeExtension(file, ".pdf");
renderer.RenderHtmlFileAsPdf(file).SaveAs(output);
}
var renderer = new ChromePdfRenderer();
foreach (string file in Directory.GetFiles("reports", "*.html"))
{
string output = Path.ChangeExtension(file, ".pdf");
renderer.RenderHtmlFileAsPdf(file).SaveAs(output);
}
Imports System.IO
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
For Each file As String In Directory.GetFiles("reports", "*.html")
Dim output As String = Path.ChangeExtension(file, ".pdf")
renderer.RenderHtmlFileAsPdf(file).SaveAs(output)
Next
Offline i odizolwane renderowanie
Ponieważ odczytuje z lokalnego systemu plików, a nie z URL-a, dziala tam, gdzie nie ma uslug sieciowych: bezpieczne back-endy, CI runners, wdrozenia on-premise. HTML i jego zasoby muszą być dostępne tylko na maszynie.
Sprawdzanie szablonów emaili
Zespoły przechowujące szablony powiadomień lub wiadomości e-mail jako pliki HTML mogą renderować je do PDF do przeglądu, zatwierdzenia lub archiwizacji, bez konieczności uruchamiania serwera, aby je zobaczyć.
Praktyczna zasada
IronPDF oferuje trzy punkty wejściowe, a wybór niewłaściwego jest najczęstszym źródłem zepsutych zasobów:
RenderHtmlFileAsPdfodczytuje plik z dysku; relatywne zasoby rozwiązują się z lokalizacji pliku.RenderHtmlAsPdfpobiera łańcuch HTML z pamięci; zwykle ustawiasz podstawowy adres URL, aby rozwiązać zasoby.RenderUrlAsPdfpobiera przez HTTP, i w tym miejscu stosuje się uwierzytelnianie, ciasteczka i loginy.
Sięgnij po metodę plikową, kiedy Twój HTML już istnieje jako plik. Skonfiguruj dane wyjściowe za pomocą RenderingOptions przed renderowaniem i najpierw zweryfikuj stronę w Chrome; jeśli tam się renderuje, to renderuje się w PDF-ie.
Często Zadawane Pytania
Jaka jest różnica między RenderHtmlFileAsPdf, RenderHtmlAsPdf i RenderUrlAsPdf?
RenderHtmlFileAsPdf odczytuje plik HTML z dysku; względne ścieżki do zasobów są rozwiązywane z lokalizacji samego pliku. RenderHtmlAsPdf przyjmuje łańcuch HTML w pamięci i zazwyczaj wymaga podstawowego URL-a dla zasobów. RenderUrlAsPdf pobiera aktywny URL przez HTTP i tutaj stosowane są autoryzacja i ciasteczka.
Czy muszę ustawić podstawowy URL przy używaniu RenderHtmlFileAsPdf?
Nie. Ponieważ metoda odczytuje rzeczywisty plik z dysku, względne ścieżki takie jak ./logo.png i styles.css są automatycznie rozwiązywane z katalogu pliku HTML. Nie jest wymagana konfiguracja podstawowego URL-a.
Czy mogę użyć RenderHtmlFileAsPdf w środowisku offline lub odizolowanym?
Tak. Metoda odczytuje z lokalnego systemu plików zamiast pobierać przez HTTP, więc działa w środowiskach bez dostępu do sieci, w tym w zabezpieczonych backendach, CI runnerach i wdrożeniach na miejscu.
Jak wsadowo przekonwertować folder plików HTML na PDF za pomocą IronPDF?
Iteruj pliki za pomocą Directory.GetFiles i wywołaj RenderHtmlFileAsPdf raz na plik. Ponownie użyj pojedynczej instancji ChromePdfRenderer w pętli, aby współdzielić kontekst przeglądarki.
Czy PDF wygląda dokładnie tak, jak w Chrome?
IronPDF używa pełnego silnika Chromium do renderowania, więc wynik będzie zgodny z podglądem przeglądarki Chrome dla tego samego pliku HTML. Zweryfikuj stronę w Chrome najpierw — jeśli renderuje się poprawnie, to PDF również będzie się poprawnie renderował.

