ItSolutionStuff.com

How to Convert HTML into PDF in Angular 11?

By Hardik Savani • October 20, 2023
Angular

Hi,

I will explain step by step tutorial angular 11 html to pdf. In this article, we will implement a angular 11 generate pdf from html. This post will give you simple example of html to pdf angular 11. we will help you to give example of how to convert html to pdf in angular 11.

we will use pdfmake, html-to-pdfmake and jspdf package for generate pdf file from html view in angular app. let's see simple example of how to generate pdf from html in angular 11.

Preview:

Step 1: Create New App

You can easily create your angular app using bellow command:

ng new myNewApp

Step 2: Install Packages

Now in this step, we need to just install ngmodule/material-carousel and angular/material in our angular application. so let's add as like bellow:

npm install --save pdfmake

npm install html-to-pdfmake

npm install jspdf --save

Step 3: Update Ts File

here, we need to update ts file as like bellow:

src/app/app.component.ts

import { Component, ViewChild, ElementRef } from '@angular/core';

import jsPDF from 'jspdf';

import pdfMake from 'pdfmake/build/pdfmake';

import pdfFonts from 'pdfmake/build/vfs_fonts';

pdfMake.vfs = pdfFonts.pdfMake.vfs;

import htmlToPdfmake from 'html-to-pdfmake';

@Component({

selector: 'app-root',

templateUrl: './app.component.html',

styleUrls: ['./app.component.css']

})

export class AppComponent {

title = 'htmltopdf';

@ViewChild('pdfTable') pdfTable: ElementRef;

public downloadAsPDF() {

const doc = new jsPDF();

const pdfTable = this.pdfTable.nativeElement;

var html = htmlToPdfmake(pdfTable.innerHTML);

const documentDefinition = { content: html };

pdfMake.createPdf(documentDefinition).open();

}

}

Step 4: Update HTML File

here, we need to update html file as like bellow code:

src/app/app.component.html

<div class="container">

<div id="pdfTable" #pdfTable>

<h2>Angular HTML To PDF Generator Example - ItSolutionStuff.com</h2>

<table class="table table-bordered">

<thead>

<tr>

<th>Firstname</th>

<th>Lastname</th>

<th>Website</th>

</tr>

</thead>

<tbody>

<tr>

<td>Hardik</td>

<td>Savani</td>

<td>itsolutionstuff.com</td>

</tr>

<tr>

<td>Vimal</td>

<td>Kashiyani</td>

<td>hdtuto.com</td>

</tr>

<tr>

<td>Harshad</td>

<td>Pathak</td>

<td>nicesnippets.com</td>

</tr>

</tbody>

</table>

</div>

<button class="btn btn-primary" (click)="downloadAsPDF()">Export To PDF</button>

</div>

Now you can run by bellow command:

ng serve

now you can check it.

I hope it can help you...

Hardik Savani

Hardik Savani

I'm a full-stack developer, entrepreneur, and founder of ItSolutionStuff.com. Passionate about PHP, Laravel, JavaScript, and helping developers grow.

📺 Subscribe on YouTube

We Are Recommending You

How to Add Carousel in Angular 11 Material?

Read Now →

How to use Bootstrap 4 Carousel in Angular 11?

Read Now →

Angular 11 Bubble Chart using ng2-charts Example

Read Now →

Angular 11 Material Datepicker Example

Read Now →

Angular 11|10 Date Range Picker Example

Read Now →

PDF Viewer in Angular 11/10 Example

Read Now →

Angular 11 Multiple Image Upload Tutorial

Read Now →

Angular 11 Install Material Design Tutorial

Read Now →

Angular 11 CRUD Application Example

Read Now →

Angular 11 Add Bootstrap Example

Read Now →