1. Go to this page and download the library: Download kowts/pdf-invoices library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
kowts / pdf-invoices example snippets
use PdfInvoices\Core\Builder\InvoiceBuilder;
use PdfInvoices\Core\Builder\ItemBuilder;
use PdfInvoices\Core\Builder\PartyBuilder;
use PdfInvoices\Core\InvoiceGenerator;
use PdfInvoices\Core\Storage\LocalStorage;
use PdfInvoices\Core\ValueObject\Money;
use PdfInvoices\Core\ValueObject\Percentage;
use PdfInvoices\Core\ValueObject\Quantity;
eller($seller)
->buyer($buyer)
->number('FT 2026/001')
->currency('CVE')
->locale('pt_PT')
->addItem(
ItemBuilder::create()
->description('Serviços profissionais')
->unitPrice(Money::fromDecimal('1500.00', 'CVE'))
->quantity(Quantity::fromDecimal('2.5'))
->tax(Percentage::fromBasisPoints(1500))
->build()
)
->notes('Pagamento a 30 dias.')
->build();
$document = InvoiceGenerator::defaultHtmlPreview()
->generate($invoice, 'modern');
$document->store(
new LocalStorage(__DIR__ . '/build'),
'invoice-preview.html'
);
use PdfInvoices\Core\Calculation\InvoiceCalculator;
use PdfInvoices\Core\Formatting\SimpleCurrencyFormatter;
use PdfInvoices\Core\InvoiceGenerator;
use PdfInvoices\Core\Localization\ArrayTranslator;
use PdfInvoices\Core\Pdf\DompdfEngine;
use PdfInvoices\Core\Template\FilesystemTemplateResolver;
use PdfInvoices\Core\Template\NativePhpTemplateRenderer;
use PdfInvoices\Core\Validation\DefaultInvoiceValidator;
$generator = new InvoiceGenerator(
new DompdfEngine(),
new NativePhpTemplateRenderer(FilesystemTemplateResolver::default()),
new InvoiceCalculator(),
ArrayTranslator::default(),
new SimpleCurrencyFormatter(),
new DefaultInvoiceValidator()
);
$pdf = $generator->generate($invoice, 'branded');
$pdf->save(__DIR__ . '/invoice.pdf');
use PdfInvoices\Core\InvoiceGenerator;
final class InvoiceController
{
public function download(InvoiceGenerator $generator)
{
$document = $generator->generate($invoice, config('pdf-invoices.template'));
return response()->streamDownload(
fn () => print $document->contents(),
'invoice.pdf',
['Content-Type' => $document->mimeType()]
);
}
}
use PdfInvoices\Core\InvoiceGenerator;
use Symfony\Component\HttpFoundation\Response;
final readonly class InvoiceController
{
public function __construct(private InvoiceGenerator $generator)
{
}
public function __invoke(): Response
{
$document = $this->generator->generate($invoice);
return new Response($document->contents(), 200, [
'Content-Type' => $document->mimeType(),
]);
}
}
text
Aplicações PHP / Laravel / Yii2 / Symfony
↓
Bridges e adaptadores
↓
kowts/pdf-invoices
↓
PHP 8.2+ e contratos independentes