How To Generate PDF From HTML View In Laravel

In this example I will teach you how to generate PDF file from HTML view in laravel. We will learn how to generate PDF from HTML using the DomPDF library. and also we create generate PDF using database records.

For generating PDF file I will use Laravel-dompdf package, it is create pdf file and also provide to download the file functionalities. I will give you example in very simple way to generate pdf file and download in your system. 

So, Let's start and follow below steps to get output.

 Step 1 : Install Laravel



Type the following command in terminal for create new project in your system.

composer create-project --prefer-dist laravel/laravel PDF_example


Step 2 : Install barryvdh/laravel-dompdf Package

After installation of project you need to install barryvdh/laravel-dompdf  Package

composer require barryvdh/laravel-dompdf


Step 3 : Add Service Provider And Aliase

After package installation we need to add service provider and aliase in  config/app.php.

'providers' => [

'aliases' => [
	'PDF' => Barryvdh\DomPDF\Facade::class,


Step 4 : Create Controller

Now create controller on this path app\Http\Controllers\UserController.php and add below command.


namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\User;
use PDF;

class UserController extends Controller
    public function index(Request $request)
        $user = User::latest()->paginate(5);
            $pdf = PDF::loadView('users.index',compact('user'));
            return $pdf->download('pdfview.pdf');

        return view('users.index',compact('user'));



Step 5 : Add Route

After that add below code in routes/web.php 



Step 6 : Create Blade File 

Now, create index.blade,php file for download and generate pdf file in this path resources\views\users\index.blade.php abd add below html code.

<!DOCTYPE html>
  <title>How To Generate PDF From HTML View In Laravel -</title>
  <link rel="stylesheet" href="">
  <script src=""></script>

  <div class="container">
    <div class="row">
      <div class="col-lg-12" style="margin-top: 15px ">
        <div class="pull-left">
          <h2>How To Generate PDF From HTML View In Laravel -</h2>
        <div class="pull-right">
          <a class="btn btn-primary" href="{{route('users.index',['download'=>'pdf'])}}">Download PDF</a>

    <table class="table table-bordered">

      @foreach ($user as $user)
        <td>{{ $user->name }}</td>
        <td>{{ $user->email }}</td>

 After adding all code in your application you can download pdf file of your html view.

How To Generate PDF From HTML View In Laravel


Techsolutionstuff | The Complete Guide

I'm a software engineer and the founder of Hailing from India, I craft articles, tutorials, tricks, and tips to aid developers. Explore Laravel, PHP, MySQL, jQuery, Bootstrap, Node.js, Vue.js, and AngularJS in our tech stack.