Możliwości

Podstawowe, ale ważne detale zrobione dobrze.

Pełna powierzchnia funkcjonalna gPdf: layout JSON-natywny, wektorowe kody kreskowe, czcionki CJK + arabskie + devanagari wbudowane, profile archiwalne PDF/A, strumienie załączników e-faktury, paginacja.

Browse use cases
/01

Zbudowane dla faktur

0,00005 USD za stronę, p50 3 ms, osadzony CJK, strumień załącznika PDF/A-3. Cztery liczby, które zespoły fintech, ERP i podatkowe sprawdzają najpierw.

// invoice — header + table pattern
{ "size": "a4",
  "elements": [
    { "type": "text",  "x": 18, "y": 22, ... },
    { "type": "table", "x": 18, "y": 60, ... }
  ]}
Why JSON beats HTML→PDF
/02

Zbudowane dla etykiet wysyłkowych

Presety rozmiarów label_100_150 i label_4_6_in. Wektorowe GS1-128, ITF-14, SSCC z precyzją 0,1 mm — przewoźnicy i 3PL drukują w szczycie bez rastrowych kodów kreskowych.

// 4×6 thermal shipping label
{ "size": "label_4_6_in",
  "elements": [{
    "type": "barcode",
    "format": "code128",
    "content": "1Z999AA10123456784" }]}
Shipping-label use case
/03

Darmowy edytor wizualny + API

Projektuj szablony PDF w darmowym edytorze WYSIWYG pod https://studio.gpdf.com, a potem generuj ten sam JSON DocumentRequest przez API. Bez osobnego formatu projektu i bez rozjazdu przy wdrożeniu.

// Studio and API share the same JSON
https://studio.gpdf.com
POST /api/v1/pdf/render
Open Studio
/04

Układ natywnie JSON

Definiuj strony, współrzędne, elementy, style, nagłówki, stopki, tła, znaki wodne i stemple bezpośrednio w JSON. Współrzędne w milimetrach, nie przybliżenia.

// inside elements[i]
"x_anchor": {
  "reference": "content_right",
  "offset": 6
}
/05

Tabele, które paginują

row_span między stronami, powtarzane nagłówki, alternate_fill, złożone podwójne obramowania. Ten 1% przypadków, który zwykle psuje generatory PDF.

// inside table element
"pagination": {
  "keep_spans_together": true
}
/06

Wektorowe kody kreskowe

30+ symboliki w tym GS1-128, QR, PDF417, DataMatrix. Wszystkie wektorowe. Łączna długość dokładna do 0,1 mm.

// 30+ formats: code128, qrcode, datamatrix, pdf417, ...
"type": "barcode",
"format": "code128",
"content": "INV-2026-001"
Why vector beats raster
/07

Wyjście PDF/A + e-faktura

Generuj profile archiwalne PDF/A i pakiety e-faktur PDF/A-3b z osadzonym XML CII dla procesów Factur-X / ZUGFeRD. Jedno pole włącza ścieżkę pakowania PDF/A-3b.

// top-level on DocumentRequest
"settings": {
  "profile": "pdfa-3b"
}
PDF/A and Factur-X, explained
/08

Typografia + fonty zastępcze CJK

Automatyczne fonty zastępcze i ścisłe tryby czcionek zapobiegają cichym brakom glifów w dokumentach łacińskich, CJK, arabskich RTL, indyjskich i bogatych w emoji.

// inside style{}
"font_family": "NotoSans-Regular",
"font_mode": "prefer"
/09

Hasło i blokady uprawnień

Szyfrowanie dokumentu AES-128 lub AES-256 plus 8 blokad uprawnień (drukowanie, modyfikacja, kopiowanie, adnotacje, formularze…). Pro: hasło otwarcia. Enterprise: hasło właściciela + kontrola na poziomie uprawnień.

Drukuj · Modyfikuj · Kopiuj · Wypełnij formularze — zobacz wszystkie 8 blokad
  • Drukowanie
  • Modyfikacja treści
  • Kopiowanie / wyciąganie tekstu i grafiki
  • Adnotacje / modyfikacja pól formularza
  • Wypełnianie istniejących formularzy
  • Wyciąganie dla dostępności
  • Składanie (wstawianie / obrót / usuwanie stron, zakładki)
  • Drukowanie w wysokiej jakości
// inside settings
"security": {
  "open_password": "reader-demo",
  "owner_password": "owner-demo",
  "algorithm": "aes_128",
  "permissions": {
    "print": true,
    "modify": false,
    "copy": false
  }
}
settings.security reference
/10

Zmienne + paginacja

{page} / {total_pages} są rozwiązywane po ułożeniu dokumentu. keep_together, widow/orphan i bloki page_break.

// element of type "variable"
{ "type": "variable",
  "name": "page",
  "scope": "system" }