Biaya
Berjalan di Cloudflare Workers — bukan kontainer Chromium 800 MB yang dibilling $0,40/jam tanpa melakukan apa-apa. $0,00005 per halaman. Tanpa minimum, tanpa biaya per-seat, tanpa biaya per-environment.
100.000 halaman seharga $5. PDF dibuat di edge dalam beberapa milidetik
Dibangun untuk skala global Mematuhi sepenuhnya mandat PDF/A, Factur-X, dan ZUGFeRD
Edit DocumentRequest di kiri. Panggil live edge worker
schema nyata, PDF nyata, biasanya <5 ms.
Berjalan di Cloudflare Workers — bukan kontainer Chromium 800 MB yang dibilling $0,40/jam tanpa melakukan apa-apa. $0,00005 per halaman. Tanpa minimum, tanpa biaya per-seat, tanpa biaya per-environment.
Profil arsip PDF/A (1b, 2b, 3b, 4) sesuai permintaan. Factur-X, ZUGFeRD, dan EN 16931 didukung secara native — Bagian 5 referensi API, bukan tautan roadmap.
pages[], elements[], x/y dalam milimeter. Tanpa HTML→PDF, tanpa headless Chrome, tanpa DSL template yang harus dipelajari. JSON yang sama menggerakkan API dan editor visual — desainer dan developer mengedit satu file.
Latin, CJK, Arab (RTL + shaping kompleks), Devanagari, Sirilik, Bengali, dan Thai sudah ada di mesin — plus 3000+ emoji berwarna. Tanpa `apt install fonts-noto-cjk`. Tidak pernah ada glif yang hilang.
Semantik dokumen nyata, bukan screenshot browser dalam wrapper PDF.
x/y dalam milimeter, x_anchor untuk perataan tepi kanan, penempatan sub-milimeter pada label. Koordinat, bukan perkiraan.
// inside elements[i]
"x_anchor": {
"reference": "content_right",
"offset": 6
} 30+ simbologi termasuk GS1-128, QR, PDF417, DataMatrix. Semua vektor. Panjang total akurat hingga 0,1 mm.
// 30+ formats: code128, qrcode, datamatrix, pdf417, ...
"type": "barcode",
"format": "code128",
"content": "INV-2026-001" Why vector beats raster font_mode: strict (family yang dideklarasikan harus menutup semua glif), prefer (fallback ke family bawaan), auto (mesin memilih). Auto/prefer kehabisan opsi mengembalikan API-504 — gagal terbuka, bukan diam.
// inside style{}
"font_family": "NotoSans-Regular",
"font_mode": "prefer" settings.profile = "pdfa-3b" mengaktifkan kepatuhan PDF/A-3b plus aliran lampiran XML tertanam yang dibutuhkan Factur-X / ZUGFeRD. Satu kolom, satu dokumen patuh.
// top-level on DocumentRequest
"settings": {
"profile": "pdfa-3b"
} PDF/A and Factur-X, explained {page} / {total_pages} di-resolve setelah layout. keep_together, widow/orphan, blok page_break.
// element of type "variable"
{ "type": "variable",
"name": "page",
"scope": "system" } row_span lintas halaman, header berulang, alternate_fill, border ganda komposit. 1 % yang selalu rusak.
// inside table element
"pagination": {
"keep_spans_together": true
} JSON DocumentRequest yang sama menggerakkan POST /api/v1/pdf/render dan editor visual di editor.gpdf.com. Edit secara visual, kirim via API, atau tulis manual — ketiganya round-trip file yang sama.
// three routes, one engine
POST /api/v1/pdf/render
POST /api/v1/template-render
POST /api/v1/e-invoice/render Read the API reference $0,00005 per halaman, p50 3 ms, CJK tertanam, stream lampiran PDF/A-3. Empat angka yang dicek pertama oleh tim fintech, ERP, dan compliance pajak.
// invoice — header + table pattern
{ "size": "a4",
"elements": [
{ "type": "text", "x": 18, "y": 22, ... },
{ "type": "table", "x": 18, "y": 60, ... }
]} Why JSON beats HTML→PDF Preset ukuran label_100_150 dan label_4_6_in. GS1-128, ITF-14, SSCC vektor dengan presisi 0,1 mm — carrier dan 3PL mencetak saat puncak tanpa barcode raster.
// 4×6 thermal shipping label
{ "size": "label_4_6_in",
"elements": [{
"type": "barcode",
"format": "code128",
"content": "1Z999AA10123456784" }]} Shipping-label use case Invoice A4 1 halaman, 12 item baris, QR + logo. Median dari 1000 pembuatan PDF. Lebih rendah lebih baik.
Methodology: 1-page A4 invoice · 12 line items · 1 QR + 1 logo · 1K invocations · median (p50) and p99 reported. Sampled 2026-04-29 from a workstation in EU-WEST. PDFShift, DocRaptor, Puppeteer and LaTeX numbers are reproduced from each vendor's published quickstart sample with the same input — re-run on your own workload before deciding. Read the head-to-head comparisons →
Tanpa per-seat. Tanpa per-environment. Tanpa gatekeeping tier support.
Semua tier berbayar termasuk
Untuk tim teregulasi, deployment private cloud/VPC, dan lingkungan intranet terisolasi. Jalankan gPdf sebagai deployment Worker, server, atau berbasis gateway yang dedicated; kontrol jaringan, kebutuhan region, ketentuan DPA, dan eskalasi dukungan ditentukan per engagement.
Dua belas jawaban — dikutip secara harfiah oleh JSON-LD FAQPage yang dikonsumsi Google rich results.
p50 adalah 3 ms dan p99 adalah 8 ms pada satu halaman A4 yang diukur dari 1000 invocation. Total wall time edge termasuk jaringan biasanya 8-15 ms.
Body DocumentRequest dalam JSON. Halaman, elemen, layer, watermark, header, footer, dan tabel semua diekspresikan secara struktural — tanpa HTML, tanpa Markdown, tanpa pass layout browser.
Headless Chromium berjalan di 200-800 ms per render dan butuh container 800 MB. gPdf merender halaman A4 yang sama dalam 3 ms di V8-isolate 1 MB, tanpa cold start. Trade-off-nya adalah format input: gPdf menerima JSON DocumentRequest, bukan HTML mentah.
Tiga: /api/v1/pdf/render menerima DocumentRequest lengkap untuk kontrol level pixel. /api/v1/template-render menerima template_id plus array data. /api/v1/e-invoice/render menghasilkan faktur hybrid Factur-X / ZUGFeRD (PDF/A-3 + XML tertanam). Ketiganya berbagi engine yang sama, rate limit yang sama, dan permukaan kode error yang sama.
Tidak. NotoSans CJK tertanam dan rantai fallback otomatis menangani glyph yang hilang. Anda tidak akan pernah melihat kotak tofu dan tidak perlu apt install fonts-noto-cjk di runtime.
Lebih dari 30 simbologi termasuk QR, GS1-128, PDF417, DataMatrix, Aztec, MaxiCode, dan Code 128. Semua vektor. Total panjang barcode dalam 0,1 mm dari ukuran yang diminta — cukup presisi untuk lebar label yang ditentukan GS1 dan ITF-14.
Ya. PDF/A-1b, 2b, 3b, dan 4 dapat dipilih per request. Stream lampiran Factur-X dan ZUGFeRD didukung untuk skenario faktur elektronik.
Ya. Atur settings.profile ke pdfa-3b dan lampirkan payload XML terstruktur sebagai stream file. Factur-X dan ZUGFeRD berjalan di atas PDF/A-3 — diperlukan untuk mandat faktur elektronik Jerman yang sudah berlaku dan mandat B2B Prancis dari September 2026.
Di dalam V8-isolate Cloudflare Workers. Tidak ada container Chromium, tidak ada Lambda warming, dan tidak ada persistensi dokumen setelah request.
Tidak. Renderer-nya stateless. DocumentRequest Anda hidup di V8-isolate selama beberapa milidetik render, lalu hilang. gPdf tidak punya layer caching atau penyimpanan dokumen — statelessness adalah kontrak, bukan opt-in.
Ya. Free Trial memberikan 100 halaman per hari, tanpa kartu kredit. Reset harian dan berhenti di kuota — tanpa tagihan kejutan. Tier berbayar mulai dari $5 per bulan untuk 100.000 halaman.
Buka playground di atas, edit DocumentRequest, lalu tekan Buat PDF — edge worker live mengembalikan PDF nyata. Salin snippet curl ke terminal Anda untuk memanggilnya dari mana saja. Playground tidak memerlukan instalasi atau kartu kredit; akun hanya dibutuhkan untuk menerbitkan API key Anda sendiri.
Kerangka netral vendor untuk memilih API pembuatan PDF. Delapan pertanyaan yang memprediksi apakah Anda masih puas 12 bulan lagi.
DocRaptor memakai Prince untuk mengonversi HTML ke PDF di hosted backend. gPdf merender structured JSON langsung di Cloudflare edge. Selisih harga 18×, dan ini bukan teaser.
Apa yang sebenarnya dibatasi profil PDF/A, mengapa Factur-X penting untuk e-invoicing Eropa, dan pipeline praktis terkecil dari JSON renderer.
Engineering yang dapat diaudit ditambah dokumentasi — kedua register, keduanya dapat diverifikasi.
Opsi residensi data EU, US, APAC, dan SA. Kebutuhan region ditetapkan dalam kontrak.
Tanpa persistensi dokumen. Tidak ada layer cache atau penyimpanan dokumen di produk.
Pesaing yang disebutkan namanya, metodologi lengkap, tanggal sampel. Setiap benchmark di halaman ini dapat direproduksi — jalankan ulang pada workload Anda sebelum memutuskan.
Input sama → PDF byte-identik. Diff-able. Dapat ditest di CI tanpa drift snapshot.