이미지 예제로 Laravel PDF 생성

원래 @https://codeanddeploy.com에 게시된 샘플 코드를 방문하여 다운로드합니다.
https://codeanddeploy.com/blog/laravel/generate-laravel-pdf-with-image-example

이 게시물에서는 이미지로 Laravel PDF를 생성하는 방법의 예를 보여드리겠습니다. 이전example에는 HTML에서 Laravel PDF를 구현하는 방법에 대한 예제가 있습니다. 이제 PDF 파일에 이미지를 포함시켜 보겠습니다.

일반적으로 제품 보고서, 회사 로고가 있는 송장 또는 스크린샷인 보고서에 PDF 이미지를 포함합니다.

시작하려면 Laravel을 설치해야 합니다. 이미 설치되어 있으면 건너뛰십시오.

1단계: 라라벨 설치



로컬에 Laravel 8이 설치되어 있지 않은 경우 아래 명령을 실행하십시오.

composer create-project --prefer-dist laravel/laravel laravel-pdf-image-example

cd laravel-pdf-image-example



2단계: dompdf 패키지 설치



Laravel에서 HTML을 PDF로 생성하려면 barryvdh/laravel-dompdf 패키지를 설치해야 합니다. 아래의 다음 명령을 실행합니다.

composer require barryvdh/laravel-dompdf


3단계: 경로 및 컨트롤러 설정



Laravel PDF 생성기를 위한 경로와 컨트롤러를 생성해 봅시다.

route.php/web.php

<?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\PdfController;

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    return view('welcome');
});

Route::get('pdf', [PdfController::class, 'index']);


아래 명령을 실행하여 컨트롤러를 만듭니다.

php artisan make:controller PdfController


그런 다음 생성된 PdfController를 편집합니다. 아래를 참조하십시오.

<?php

namespace App\Http\Controllers;

use PDF;
use Illuminate\Http\Request;

class PdfController extends Controller
{
    public function index() 
    {
        $pdf = PDF::loadView('pdf.sample-with-image', [
            'title' => 'CodeAndDeploy.com Laravel Pdf with Image Example',
            'description' => 'This is an example Laravel pdf with Image tutorial.',
            'footer' => 'by <a href="https://codeanddeploy.com">codeanddeploy.com</a>'
        ]);

        return $pdf->download('sample-with-image.pdf');
    }
}


4단계: 보기 설정



이제 이미지 생성기를 사용하여 PDF 보기를 설정해 보겠습니다. 이 예에서는 pdf 안에 resources/views/ 폴더를 만든 다음 블레이드 파일sample-with-image.blade.php을 만듭니다. 아래 샘플 코드를 참조하십시오.

<!DOCTYPE html>
<html>
<head>
    <title>{{ $title }}</title>
</head>
<body>
    <p>{{ $description }}</p>

    <br>

    <p>Put your text here.</p>

    <p>Place your dynamic content here.</p>

    <br/>
    <br/>
    <br/>
    <strong>Public Folder:</strong>
    <img src="{{ public_path('images/codeanddeploy.jpg') }}" style="width: 20%">

    <br/>
    <br/>
    <br/>
    <strong>Storage Folder:</strong>
    <img src="{{ storage_path('app/public/images/codeanddeploy.jpg') }}" style="width: 20%">

    <br/>

    <br>

    <p style="text-align: center;">{!! $footer !!}</p>
</body>
</html>


참고: 공개 내부에 images 폴더와 images 내부에 \storage\app\public 폴더가 있어야 하며 이미지가 명시된 폴더에 있어야 합니다. 원하는 이름을 지정할 수 있습니다.

이제 코드가 준비되었습니다. 아래 명령을 실행하여 테스트해 보겠습니다.

php artisan serve


그런 다음 브라우저에서 아래 URL을 실행합니다.


http://127.0.0.1:8000/pdf


다음은 dompdf를 사용하여 이미지가 포함된 Laravel PDF의 결과로 생성된 예제입니다.



이 튜토리얼이 도움이 되었으면 합니다. 이 코드를 다운로드하려면 여기https://codeanddeploy.com/blog/laravel/generate-laravel-pdf-with-image-example를 방문하십시오.

행복한 코딩 :)

좋은 웹페이지 즐겨찾기