Skip to content

Hello World

Простейший пример TCPDF-Next: создание документа, добавление страницы, запись текста и сохранение -- всё в одной fluent-цепочке.

Полный пример

php
<?php

declare(strict_types=1);

require __DIR__ . '/vendor/autoload.php';

use TcpdfNext\Document;
use TcpdfNext\Enums\Alignment;

Document::create()
    ->setAuthor('TCPDF-Next')
    ->setTitle('Hello World Example')
    ->setSubject('Simplest possible PDF')
    ->addPage()                               // A4 portrait by default
    ->setFont('helvetica', size: 16)
    ->cell(
        width:  0,                            // 0 = full printable width
        height: 10,
        text:   'Hello World!',
        align:  Alignment::Center,
    )
    ->save(__DIR__ . '/hello-world.pdf');

echo 'PDF created.' . PHP_EOL;

Что делает каждый метод

МетодНазначение
Document::create()Статическая фабрика -- возвращает новый Document с настройками по умолчанию A4 / портретная / мм
setAuthor(), setTitle(), setSubject()Встраивают метаданные, видимые в панели свойств программы просмотра
addPage()Вставляет страницу (обязательно перед любым контентом)
setFont(family, size)Активирует семейство шрифтов и размер в пунктах
cell(width, height, text, align)Записывает однострочную текстовую ячейку
save(path)Сериализует PDF и записывает на диск

Альтернативные режимы вывода

php
use TcpdfNext\Enums\OutputDestination;

// Return raw PDF bytes as a string
$bytes = $pdf->output(OutputDestination::String);

// Send inline to the browser
$pdf->output(OutputDestination::Inline, 'hello.pdf');

Результат

Запуск скрипта создаёт одностраничный PDF формата A4 с надписью "Hello World!", отцентрированной в верхней части страницы.

TIP

Fluent API означает, что каждый сеттер возвращает static -- промежуточные переменные не нужны.

Распространяется по лицензии LGPL-3.0-or-later.