flutter_pdf_invoice_widgets
library
Classes
-
BaseTemplate
-
Shared base for all built-in templates.
-
CalculatedInvoiceAdjustment
-
A resolved document-level adjustment and its rounded amount.
-
ClassicInvoice
-
Classic formal business invoice template
-
CompanyInfo
-
Information about the company issuing the document.
-
CreativeInvoice
-
Colorful / Creative invoice template
-
CreditNote
-
Credit note / Refund template
-
CurrencyFormatter
-
Formats currency with either explicit separators or ICU locale rules.
-
CustomerInfo
-
Information about the customer receiving the document.
-
DateFormatter
-
Locale-aware date formatter used by all built-in templates.
-
DeliveryNote
-
Delivery note / Packing slip template
-
Styling for the invoice footer section.
-
Styling for the invoice header section.
-
InvoiceAdjustment
-
A document-level discount, charge, shipping cost, or withholding.
-
InvoiceCalculator
-
Centralized financial calculator used by models, components, and templates.
-
InvoiceColumn
-
Configuration for a single column in the invoice table.
-
InvoiceDocument
-
Serializable, validated source data for a complete business document.
-
InvoiceInfo
-
Metadata that identifies and describes an invoice-like document.
-
InvoiceItem
-
Represents one priced line on a document.
-
InvoiceLineTotals
-
Rounded totals for one invoice line.
-
InvoiceLocalization
-
Locale, direction, date pattern, and built-in label bundle for a document.
-
InvoicePdfMetadata
-
Optional PDF information-dictionary metadata.
-
InvoiceRenderContext
-
Context supplied to custom section builders.
-
InvoiceStyle
-
Master visual, formatting, locale, and font configuration.
-
InvoiceTemplateRegistry
-
Creates built-in templates from InvoiceDocument and hosts optional custom
template factories without exposing package internals.
-
InvoiceTotals
-
Authoritative rounded totals for a complete document.
-
InvoiceValidationIssue
-
A single validation problem with a stable machine-readable code.
-
MinimalistInvoice
-
Minimalist, typography-driven invoice template
-
ModernInvoice
-
Modern clean invoice template
-
MonetaryPolicy
-
Defines when and how monetary values are quantized.
-
PaymentInfo
-
Bank, payment-method, terms, and QR information.
-
PdfFontLoader
-
Utility class for loading fonts from raw bytes for PDF generation.
-
ProfessionalInvoice
-
Professional / Corporate invoice template
-
ProformaInvoice
-
Proforma invoice template
-
QuoteEstimate
-
Quote or Estimate template with acceptance signature block
-
ReceiptTemplate
-
Narrow receipt/POS style template
-
ShippingInfo
-
Shipping and delivery information.
-
TableStyle
-
Styling and columns for the item table.
Functions
-
buildPdfAddressBlock({required CompanyInfo company, required CustomerInfo customer, required InvoiceStyle style})
→ Widget
-
Builds the address block section, typically containing the billing
addresses of both the issuer ("Bill From") and the customer ("Bill To").
-
buildPdfDivider({required InvoiceStyle style, double? thickness, PdfColor? color, double? topPadding, double? bottomPadding})
→ Widget
-
Builds a simple horizontal line/divider for PDF layouts.
-
MultiPage footer honoring text, date, background, padding, and pagination.
-
Builds a responsive header and honors every HeaderStyle option.
-
buildPdfInfoBlock({required InvoiceInfo info, required InvoiceStyle style, bool transparent = false})
→ Widget
-
Displays invoice metadata (number, dates, terms, custom fields) in a clean key-value layout.
-
buildPdfItemTable({required List<InvoiceItem> items, required InvoiceStyle style, InvoiceInfo? info, bool taxInclusive = false, MonetaryPolicy? monetaryPolicy})
→ Widget
-
Builds a multi-page item table with stable labels and per-column alignment.
-
buildPdfPaymentBlock({required PaymentInfo payment, required InvoiceStyle style})
→ Widget
-
Displays payment information, including bank details, terms, and optionally a QR code.
-
buildPdfSignatureBlock({required InvoiceStyle style})
→ Widget
-
Builds a signature block with an optional image, a line, and a label.
-
buildPdfTotalsBlock({required List<InvoiceItem> items, required InvoiceStyle style, InvoiceInfo? info, List<InvoiceAdjustment> adjustments = const [], double amountPaid = 0, bool taxInclusive = false, MonetaryPolicy? monetaryPolicy, InvoiceTotals? totals})
→ Widget
-
Builds the financial summary from the centralized calculation engine.
-
buildPdfWatermark({required InvoiceStyle style})
→ Widget
-
Creates a full-page watermark overlay using text or an image.
-
formatDate(DateTime date, [String format = 'MMM dd, yyyy', String? locale])
→ String
-
Formats a date with an optional ICU locale.
-
formatInvoiceItemValue({required InvoiceItem item, required InvoiceColumn column, required int rowIndex, required CurrencyFormatter formatter, bool taxInclusive = false, MonetaryPolicy policy = MonetaryPolicy.standard, String numberFormatter(double)?, String percentageFormatter(double)?})
→ String
-
Resolves one item value for a table column.