Generera PDF från HTML i C#

När du surfar på olika webbplatser kanske du vill ladda ner HTML-innehållet på en webbsida som en PDF-fil för senare användning. I det här fallet behöver du en allt-i-ett-konverterare för att korrekt konvertera ditt innehåll från HTML till PDF. Som C#-utvecklare kan vi enkelt konvertera HTML-innehåll från HTML-filer till PDF-dokument. Vi kan också generera ett PDF-dokument från en HTML-sträng eller spara en webbsida som en PDF från en live-URL. I den här artikeln kommer vi att lära oss hur man genererar en PDF från HTML i C#.

Följande ämnen ska behandlas i den här artikeln:

  1. C# API för att generera PDF från HTML
  2. Generera PDF-dokument från HTML
  3. Konvertera HTML till PDF med sparalternativ
  4. Generera PDF från HTML-sträng
  5. Generera PDF från Live URL

C# API för att generera PDF från HTML

För att generera ett PDF-dokument från en HTML-fil kommer vi att använda Aspose.HTML for .NET API. Det är ett avancerat HTML-bearbetnings-API som gör det möjligt att skapa, modifiera och extrahera data från HTML-dokument. Det tillåter också att konvertera och rendera HTML-dokument utan någon extern programvara.

Klassen HTMLDocument i API:t representerar ett HTML-dokument eller webbsidan som vi ser i webbläsaren. Klassen PdfSaveOptions gör det möjligt att ange olika sparalternativ samtidigt som du sparar som PDF. Vi har klassen Converter som ger ett brett utbud av konverteringar till de populära formaten, såsom PDF, XPS, bildformat, etc. Den tillhandahåller metoderna ConvertHTML() för att konvertera HTML till andra format.

Vänligen antingen ladda ned DLL för API:t eller installera den med NuGet.

PM> Install-Package Aspose.Html

Generera PDF-dokument från HTML i C#

Vi kan enkelt generera ett PDF-dokument från en HTML-fil genom att följa stegen nedan:

  1. Först laddar du ett HTML-dokument med HTMLDocument-klassen.
  2. Skapa sedan en instans av klassen PdfSaveOptions.
  3. Till sist, anropa metoden Converter.ConvertHTML() för att generera en PDF. Det tar HTMLDocument, PdfSaveOptions och utdata PDF-filsökväg som argument.

Följande kodexempel visar hur man genererar ett PDF-dokument från en HTML-fil med C#.

// Detta kodexempel visar hur man genererar ett PDF-dokument från en HTML-fil.
// Ange sökväg för HTML-fil
string documentPath = @"C:\Files\sample.html";

// Sökväg till PDF-fil 
string savePath = Path.Combine(@"C:\Files\output.pdf");

// Ladda in HTML-fil
var document = new HTMLDocument(documentPath);

// Initiera PdfSaveOptions 
var options = new PdfSaveOptions();

// Konvertera HTML till PDF
Converter.ConvertHTML(document, options, savePath);
Generera-PDF-dokument-från-HTML-i-CSharp

Generera PDF-dokument från HTML i C#

Konvertera HTML till PDF med Spara alternativ i C#

Vi kan generera ett PDF-dokument från en HTML-fil med ytterligare sparalternativ genom att följa stegen nedan:

  1. Först laddar du ett HTML-dokument med HTMLDocument-klassen.
  2. Skapa sedan en instans av klassen PdfSaveOptions.
  3. Efter det, ange spara alternativ som HorizontalResolution, VerticalResolution, etc.
  4. Till sist, anropa metoden Converter.ConvertHTML() för att generera en PDF.

Följande kodexempel visar hur man genererar en PDF från en HTML-fil med ytterligare alternativ i C#.

// Detta kodexempel visar hur man genererar ett PDF-dokument från en HTML-fil med Spara-alternativ.
// Ange sökväg för HTML-fil
string documentPath = @"C:\Files\sample.html";

// Sökväg till PDF-fil 
string savePath = Path.Combine(@"C:\Files\output.pdf");

// Ladda in HTML-fil
var document = new HTMLDocument(documentPath);

// Initiera PdfSaveOptions. 
// Ställ in sidstorlek, marginaler, upplösningar och ändra bakgrundsfärgen till 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));

// Konvertera HTML till PDF
Converter.ConvertHTML(document, options, savePath);

Generera PDF från HTML-sträng i C#

Vi kan också generera ett PDF-dokument från en HTML-sträng genom att följa stegen nedan:

  1. Skapa först en instans av klassen PdfSaveOptions.
  2. Definiera alternativt spara alternativ.
  3. Till sist, anropa metoden Converter.ConvertHTML() för att generera en PDF. Det tar HTML-sträng, PdfSaveOptions och utdata-PDF-filsökväg som argument.

Följande kodexempel visar hur man genererar en PDF från en HTML-sträng med C#.

// Detta kodexempel visar hur man genererar ett PDF-dokument från en HTML-sträng.
string htmlString = @"<h1>Convert HTML to PDF!</h1><br/><h2>This is Sample Heading!</h2><p>This is first paragraph.</p>";

// Initiera PdfSaveOptions 
var options = new PdfSaveOptions();

// Anropa ConvertHTML-metoden för att konvertera HTML-koden till PDF           
Converter.ConvertHTML(htmlString, ".", options, @"C:\Files\HtmlStringToPdf.pdf");
Generera-PDF-från-HTML-String-in-CSharp

Generera PDF från HTML-sträng i C#

Generera PDF från Live URL i C#

I föregående avsnitt har vi sett hur man genererar en PDF från en HTML-sträng. Vi kan också spara en webbsida från en URL till ett PDF-dokument genom att följa stegen nedan:

  1. Skapa först en instans av klassen Url med webbadressen till en webbsida.
  2. Skapa sedan en instans av klassen PdfSaveOptions.
  3. Definiera alternativt spara alternativ.
  4. Slutligen sparar du HTML-koden som en PDF-fil med metoden Converter.ConvertHTML(). Det tar URL, PdfSaveOptions och utdata PDF-filsökväg som argument.

Följande kodexempel visar hur man genererar en PDF från Live URL med C#.

// URL
Url url = new Url("https://docs.aspose.com/diagram/net/");

// Initiera PdfSaveOptions 
var options = new PdfSaveOptions();

// Konvertera HTML-koden till PDF
Converter.ConvertHTML(url, options, @"C:\Files\outputFromURL.pdf");

Få gratis licens

Du kan få en gratis tillfällig licens för att prova Aspose.HTML för .NET utan utvärderingsbegränsningar.

Slutsats

I den här artikeln har vi lärt oss hur man:

  • ladda en HTML-fil programmatiskt;
  • definiera PDF-sparalternativ;
  • spara HTML-sträng som PDF;
  • spara en webbsida som ett PDF-dokument;
  • konvertera HTML-fil till PDF i C#.

Förutom att generera PDF från HTML i C# kan du lära dig mer om Aspose.HTML för .NET API med dokumentation. I händelse av oklarheter är du välkommen att kontakta oss på vårt gratis supportforum.

Se även