PDF naar HTML-conversie

De [PDF][2] (Portable Document Format) is een van de veelgebruikte documentindelingen voor het delen van gegevens en informatie over verschillende platforms. Een van de unieke mogelijkheden is dat de getrouwheid van een document intact blijft bij weergave op elk platform dat de applicatie gebruikt volgens de Adobe-specificaties. Bovendien is de [HTML][3] (HyperText Markup Language) ook een toonaangevend bestandsformaat voor het ontwikkelen van webpagina’s en de meeste webbrowsers ondersteunen dit formaat. PDF wordt echter algemeen geaccepteerd omdat het gemakkelijk op elk apparaat kan worden bekeken zonder de documentopmaak te verliezen. Daarom gaan we in dit artikel stappen bespreken voor het converteren van het [HTML][3]-bestand naar [PDF][2]-indeling met behulp van .NET API.

  • [C# API om HTML naar PDF te converteren][4]
  • [HTML converteren naar PDF in C#][5]
  • [Lettertypen insluiten tijdens conversie][6]
  • [Converteer webpagina’s naar PDF][7]
  • [Geef volledige HTML weer op één pagina][8]

C# API om HTML naar PDF te converteren

Om de conversiebewerking uit te voeren, moeten we eerst [Aspose.PDF voor .NET][9] op het systeem installeren. De API is beschikbaar in de [NuGet][10]-bibliotheek. Voer de volgende opdracht uit op de Package Manager-console om deze te installeren:

Install-Package Aspose.Pdf

Zodra de installatie is voltooid, verschijnt de Aspose.PDF voor .NET onder de map Pakketten in de oplossingsverkenner.

Converteer HTML naar PDF in C#

Hieronder vindt u de stappen voor het converteren van HTML naar PDF met C#

  1. Maak een instantie van de klasse License om eventuele beperkingen tijdens het genereren van PDF-bestanden op te heffen.
  2. Maak een object van de klasse HtmlLoadOptions terwijl u de ingevoerde HTML-basis-URL als argument doorgeeft aan [HtmlLoadOptions(…)](https ://apireference.aspose.com/pdf/net/aspose.pdf/htmlloadoptions) constructeur.
  3. Initialiseer het object van de klasse Document en geef [HtmlLoadOptions](https://apireference.aspose.com/pdf/net/ door) aspose.pdf/htmlloadoptions)-object als een argument voor de constructor.
  4. Roep de methode Opslaan(…) van het documentobject aan en geef de uitvoer weer in PDF-indeling.

Sluit lettertypen in tijdens de conversie

De meeste HTML-pagina’s gebruiken vaak lettertypen (bijv. lettertypen uit lokale mappen, Google Fonts, enz.) en om de lay-out van de pagina’s te behouden, worden dezelfde lettertypen ingesloten tijdens het weergaveproces. Dus om het insluiten van lettertypen in het resulterende document te regelen, moeten we de eigenschap [IsEmbedFonts][11] gebruiken. De maateenheid in Aspose.PDF is Punten. En we weten dat A3 297 × 420 millimeter of 11,69 × 16,54 inch meet. De afmetingen zijn dus afgerond op 842 × 1190 punten. In het volgende codefragment passen we het paginaformaat van het resulterende document aan als A3 en de paginaoriëntatie als Liggend.

Converteer webpagina naar PDF

Afgezien van de conversie van HTML-bestanden, kunnen we ook een vereiste hebben om een webpagina rechtstreeks naar PDF-formaat te converteren. Dus om aan deze vereiste te voldoen, zullen we eerst de inhoud van de externe webpagina ophalen met behulp van de HttpClient-instantie, een Stream-object maken en vervolgens de Stream-instantie doorgeven aan het Document-object. De reden dat we de inhoud in Stream nodig hebben, is dat de Document-instantie alleen bestanden of Steam-objecten accepteert. In het volgende gedeelte worden de stappen uitgelegd voor het converteren van een webpagina naar PDF met C#

  1. Lees de inhoud van de pagina met behulp van een [HttpClient][12]-object.
  2. Instantiseer het [HtmlLoadOptions][13]-object en stel de basis-URL in.
  3. Initialiseer een [Document][14]-object en geef het stream-object en de [HtmlLoadOptions][13]-instantie door als argumenten.
  4. Roep de methode [Save(String)][15] aan vanuit de klasse Document om de uitvoer te genereren.

Geef complete HTML weer op één pagina

Tijdens de conversie van HTML naar PDF is de lengte van het resulterende bestand in overeenstemming met de inhoudslengte van een invoer-HTML-document. Als de invoer-HTML dus uit meerdere pagina’s bestaat, zal het resulterende bestand ook meerdere pagina’s beslaan. We kunnen de uitvoer echter beperken tot een enkele PDF-pagina. Om aan deze vereiste te voldoen, kan de eigenschap [IsRenderToSinglePage][16] van de klasse HtmlLoadOptions worden gebruikt. Hieronder vindt u het codefragment voor het weergeven van de volledige HTML-inhoud op een enkele PDF-pagina met behulp van C#.

Ontvang een gratis licentie

U kunt een gratis tijdelijke licentie aanvragen om de API te proberen zonder enige evaluatiebeperkingen.

Conclusie

In dit artikel hebben we geleerd over de aanpak van het converteren van HTML-bestanden naar PDF-indeling met behulp van .NET API. Als u meer wilt weten over andere opwindende functies die worden aangeboden door Aspose.PDF voor .NET, gaat u naar de pagina [Belangrijkste kenmerken][17]. Een complete set voorbeelden is te vinden in de [GitHub-repository][18].

Snelle tip

We hebben ook gratis online applicaties ontwikkeld om snel de functies van onze API’s te controleren. U kunt dus de [Aspose.PDF-conversie-app][19] raadplegen om een HTML-bestand om te zetten in een PDF-indeling. Bovendien kunt u ook verschillende andere bestandsindelingen gebruiken en aan uw conversievereisten voldoen. [1]: https://blog.conholdate.com/wp-content/uploads/sites/27/2021/04/icon-1.png [2]: https://docs.fileformat.com/pdf/ [3]: https://docs.fileformat.com/web/html/ [4]: #CSharp-API-to-Convert-HTML-to-PDF [5]: #Convert-HTML-to-PDF-in-CSharp [6]: #Embed-fonts-during-conversion [7]: #Convert-Web-page-to-PDF [8]: #Render-complete-HTML-on-a-single-page [9]: https://products.aspose.com/pdf/net [10]: https://www.nuget.org/packages/Aspose.PDF/ [11]: https://apireference.aspose.com/pdf/net/aspose.pdf/htmlloadoptions/properties/isembedfonts [12]: https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient?view=net-5.0 [13]: https://apireference.aspose.com/pdf/net/aspose.pdf/htmlloadoptions [14]: https://apireference.aspose.com/pdf/net/aspose.pdf/document [15]: https://apireference.aspose.com/pdf/net/aspose.pdf.document/save/methods/4 [16]: https://apireference.aspose.com/pdf/net/aspose.pdf/htmlloadoptions/properties/isrendertosinglepage [17]: https://docs.aspose.com/pdf/net/key-features/ [18]: https://github.com/aspose-pdf/Aspose.Pdf-for-.NET [19]: https://products.aspose.app/pdf/conversion