Podczas przeglądania różnych stron internetowych możesz chcieć pobrać zawartość HTML strony internetowej jako plik PDF do późniejszego wykorzystania. W takim przypadku potrzebujesz konwertera typu „wszystko w jednym”, aby poprawnie przekonwertować zawartość z HTML na PDF. Jako programista C# możemy łatwo konwertować zawartość HTML z plików HTML na dokumenty PDF. Możemy również wygenerować dokument PDF z ciągu HTML lub zapisać stronę internetową jako PDF z aktywnego adresu URL. W tym artykule dowiemy się, jak wygenerować PDF z HTML w C#.
W tym artykule zostaną omówione następujące tematy:
- C# API do generowania plików PDF z HTML
- Generuj dokument PDF z HTML
- Konwertuj HTML na PDF z opcjami zapisu
- Generuj PDF z ciągu znaków HTML
- Wygeneruj plik PDF z aktywnego adresu URL
C# API do generowania plików PDF z HTML
Aby wygenerować dokument PDF z pliku HTML, użyjemy API Aspose.HTML for .NET. Jest to zaawansowany interfejs API przetwarzania HTML, który umożliwia tworzenie, modyfikowanie i wyodrębnianie danych z dokumentów HTML. Umożliwia także konwertowanie i renderowanie dokumentów HTML bez zewnętrznego oprogramowania.
Klasa HTMLDocument API reprezentuje dokument HTML lub stronę internetową, którą widzimy w przeglądarce. Klasa PdfSaveOptions umożliwia określenie różnych opcji zapisu podczas zapisywania jako PDF. Mamy klasę Converter, która zapewnia szeroki zakres konwersji do popularnych formatów, takich jak PDF, XPS, formaty graficzne itp. Zapewnia metody ConvertHTML() do konwersji HTML na inne formaty.
Proszę pobrać bibliotekę DLL interfejsu API lub zainstalować ją za pomocą NuGet.
PM> Install-Package Aspose.Html
Wygeneruj dokument PDF z HTML w C#
Możemy łatwo wygenerować dokument PDF z pliku HTML, wykonując czynności podane poniżej:
- Najpierw załaduj dokument HTML przy użyciu klasy HTMLDocument.
- Następnie utwórz instancję klasy PdfSaveOptions.
- Na koniec wywołaj metodę Converter.ConvertHTML() w celu wygenerowania pliku PDF. Jako argumenty przyjmuje HTMLDocument, PdfSaveOptions i wyjściową ścieżkę pliku PDF.
Poniższy przykładowy kod pokazuje, jak wygenerować dokument PDF z pliku HTML przy użyciu języka C#.
// Ten przykład kodu demonstruje, jak wygenerować dokument PDF z pliku HTML.
// Wprowadź ścieżkę pliku HTML
string documentPath = @"C:\Files\sample.html";
// Wyjściowa ścieżka pliku PDF
string savePath = Path.Combine(@"C:\Files\output.pdf");
// Załaduj wejściowy plik HTML
var document = new HTMLDocument(documentPath);
// Zainicjuj PdfSaveOptions
var options = new PdfSaveOptions();
// Konwertuj HTML na PDF
Converter.ConvertHTML(document, options, savePath);
Konwertuj HTML na PDF z opcjami zapisu w C#
Możemy wygenerować dokument PDF z pliku HTML z dodatkowymi opcjami zapisu, wykonując poniższe czynności:
- Najpierw załaduj dokument HTML przy użyciu klasy HTMLDocument.
- Następnie utwórz instancję klasy PdfSaveOptions.
- Następnie określ opcje zapisu, takie jak HorizontalResolution, VerticalResolution itp.
- Na koniec wywołaj metodę Converter.ConvertHTML() w celu wygenerowania pliku PDF.
Poniższy przykładowy kod pokazuje, jak wygenerować plik PDF z pliku HTML z dodatkowymi opcjami w języku C#.
// Ten przykład kodu demonstruje, jak wygenerować dokument PDF z pliku HTML z opcjami zapisywania.
// Wprowadź ścieżkę pliku HTML
string documentPath = @"C:\Files\sample.html";
// Wyjściowa ścieżka pliku PDF
string savePath = Path.Combine(@"C:\Files\output.pdf");
// Załaduj wejściowy plik HTML
var document = new HTMLDocument(documentPath);
// Zainicjuj PdfSaveOptions.
// Ustaw rozmiar strony, marginesy, rozdzielczości i zmień kolor tła na AliceBlue
var options = new PdfSaveOptions()
{
HorizontalResolution = 200,
VerticalResolution = 200,
JpegQuality = 100,
BackgroundColor = Color.AliceBlue
};
options.PageSetup.AnyPage = new Page(new Aspose.Html.Drawing.Size(600, 300), new Margin(20, 10, 10, 10));
// Konwertuj HTML na PDF
Converter.ConvertHTML(document, options, savePath);
Wygeneruj PDF z ciągu HTML w C#
Możemy również wygenerować dokument PDF z ciągu HTML, wykonując czynności podane poniżej:
- Najpierw utwórz instancję klasy PdfSaveOptions.
- Opcjonalnie zdefiniuj opcje zapisywania.
- Na koniec wywołaj metodę Converter.ConvertHTML() w celu wygenerowania pliku PDF. Pobiera ciąg HTML, PdfSaveOptions i ścieżkę pliku wyjściowego PDF jako argumenty.
Poniższy przykładowy kod pokazuje, jak wygenerować plik PDF z ciągu HTML przy użyciu języka C#.
// Ten przykład kodu demonstruje, jak wygenerować dokument PDF z ciągu HTML.
string htmlString = @"<h1>Convert HTML to PDF!</h1><br/><h2>This is Sample Heading!</h2><p>This is first paragraph.</p>";
// Zainicjuj PdfSaveOptions
var options = new PdfSaveOptions();
// Wywołaj metodę ConvertHTML, aby przekonwertować kod HTML na format PDF
Converter.ConvertHTML(htmlString, ".", options, @"C:\Files\HtmlStringToPdf.pdf");
Wygeneruj plik PDF z adresu URL na żywo w języku C#
W poprzedniej sekcji widzieliśmy, jak wygenerować plik PDF z ciągu znaków HTML. Możemy również zapisać stronę internetową z adresu URL do dokumentu PDF, wykonując czynności podane poniżej:
- Najpierw utwórz instancję klasy Url z adresem URL strony internetowej.
- Następnie utwórz instancję klasy PdfSaveOptions.
- Opcjonalnie zdefiniuj opcje zapisywania.
- Na koniec zapisz kod HTML jako plik PDF za pomocą metody Converter.ConvertHTML(). Jako argumenty przyjmuje URL, PdfSaveOptions i wyjściową ścieżkę pliku PDF.
Poniższy przykładowy kod pokazuje, jak wygenerować plik PDF z aktywnego adresu URL przy użyciu języka C#.
// Adres URL
Url url = new Url("https://docs.aspose.com/diagram/net/");
// Zainicjuj PdfSaveOptions
var options = new PdfSaveOptions();
// Konwertuj kod HTML na PDF
Converter.ConvertHTML(url, options, @"C:\Files\outputFromAdres URL.pdf");
Uzyskaj bezpłatną licencję
Możesz uzyskać bezpłatną tymczasową licencję, aby wypróbować Aspose.HTML for .NET bez ograniczeń ewaluacyjnych.
Wniosek
W tym artykule dowiedzieliśmy się, jak:
- programowo załadować plik HTML;
- zdefiniuj opcje zapisu PDF;
- zapisz ciąg HTML jako PDF;
- zapisać stronę internetową jako dokument PDF;
- przekonwertować plik HTML na PDF w języku C#.
Poza generowaniem PDF z HTML w C#, możesz dowiedzieć się więcej o Aspose.HTML for .NET API korzystając z documentation. W przypadku jakichkolwiek niejasności prosimy o kontakt na naszym darmowym forum pomocy.