Buku resep PHP
Indeks ini mencantumkan resep NextPDF berbasis PHP: halaman yang berfokus pada tugas, dapat dijalankan, dan menggunakan API PHP inti secara langsung. Setiap resep di bawah docs/public/cookbook/php/ dimiliki dan diverifikasi oleh repositori inti nextpdf. Setiap resep memiliki skrip examples/*.php dan rangka uji tests/Cookbook/Php/. Agregator kemudian menarik setiap halaman ke situs ini dan mempertahankan asal sumbernya.
Karena ini adalah indeks, halaman ini tidak membuat klaim perilaku tentang resep apa pun. Setiap baris mencatat tujuan setiap resep, modul inti yang digunakan, dan profil reproduktivitas yang dideklarasikan. Profil dan klaim kesesuaian apa pun merupakan bagian dari halaman resep itu sendiri. Nilai tersebut berasal dari front-matter halaman tersebut dan ujinya di dalam repositori, bukan dari indeks ini. Untuk cookbook integrasi (framework / renderer / layanan), lihat Buku resep integrasi. Untuk kontrak yang diikuti setiap resep yang dapat dijalankan, lihat Konvensi resep.
Cara slug resep diatur
Bagian berjudul “Cara slug resep diatur”Setiap resep ditulis di repositori inti di bawah docs/public/cookbook/php/ dan dipublikasikan ke situs ini oleh agregator. Setiap slug mengikuti satu konvensi: satu segmen.
/cookbook/php/<recipe>/<recipe> menamai tujuan resep dalam kebab-case (misalnya render-html-to-pdf, bukan nama modul html). Slug ini menggunakan huruf kecil, dipisahkan dengan tanda hubung, tidak berisi nomor versi, dan diakhiri dengan satu garis miring penutup.
Profil reproduktivitas, dalam satu baris
Bagian berjudul “Profil reproduktivitas, dalam satu baris”Setiap resep mendeklarasikan profil paling ketat yang dapat dipenuhi secara jujur:
- bitwise — identik secara bita pada setiap eksekusi (konten deterministik biasa dengan seluruh entropi disematkan).
- structural — identik setelah atom volatil dinormalkan (trailer
/ID, tanggal creation/modification, awalan subset font — dalam praktiknya, setiap PDF multiobjek). - semantic — hanya menjamin kesetaraan AST struktural ditambah metadata (keluaran yang ditandatangani atau diberi stempel waktu, atau keluaran yang kesetaraannya memang tidak stabil secara bita).
Halaman resep membuktikan profilnya melalui rangka ujinya. Indeks ini hanya melaporkan nilai yang dideklarasikan halaman tersebut.
Fondasi
Bagian berjudul “Fondasi”Buat dokumen, atur halaman, dan tata gayanya.
| Resep | Fungsinya | Modul | Profil |
|---|---|---|---|
render-html-to-pdf | Render dokumen HTML menjadi PDF | Html | structural |
style-with-css | Terapkan CSS pada hasil render HTML | Html | structural |
html-table-layout | Atur tata letak tabel HTML | Html | structural |
paginate-long-html | Paginasi dokumen HTML yang panjang | Html | structural |
paginate-large-html-tables | Paginasi tabel HTML besar di beberapa halaman | Html | structural |
render-rtl-arabic-html | Render HTML Arab dari kanan ke kiri | Html | structural |
compose-text-and-fonts | Susun teks dengan kendali tipografi | Typography | structural |
embed-and-subset-fonts | Sematkan dan buat subset font | Font | structural |
cjk-vertical-writing | Atur teks CJK dalam mode penulisan vertikal | Typography | structural |
multi-page-document | Buat dokumen multihalaman | Document | structural |
headers-and-footers | Tambahkan header dan footer berjalan | Layout | structural |
Grafik dan konten
Bagian berjudul “Grafik dan konten”Bekerja dengan vektor, gambar, lapisan, dan ruang koordinat.
| Resep | Fungsinya | Modul | Profil |
|---|---|---|---|
draw-vector-graphics | Gambar grafis vektor | Graphics | structural |
gradients-and-transparency | Terapkan gradien dan transparansi | Graphics | structural |
embed-images | Sematkan gambar raster | Content | structural |
add-watermarks-and-backgrounds | Tambahkan tanda air teks dan gambar atau latar belakang ke halaman | Content | structural |
cmyk-spot-color-and-icc-profiles | Hasilkan CMYK dan spot color siap cetak | Color | structural |
embed-file-attachments | Sematkan berkas dan buat portofolio PDF | Content | structural |
optional-content-layers | Gunakan konten opsional (lapisan) | Graphics | structural |
transform-coordinate-space | Transformasikan ruang koordinat | Graphics | structural |
Navigasi dan formulir
Bagian berjudul “Navigasi dan formulir”Tambahkan markah, tautan, anotasi, dan bidang AcroForm.
| Resep | Fungsinya | Modul | Profil |
|---|---|---|---|
bookmarks-and-toc | Buat markah dan daftar isi | Navigation | structural |
generate-dynamic-table-of-contents | Hasilkan daftar isi dinamis | Navigation | structural |
links-and-annotations | Tambahkan tautan dan anotasi | Navigation | structural |
generate-barcodes | Hasilkan kode batang | Barcode | bitwise |
gs1-composite-barcodes | Hasilkan kode batang GS1 Composite (pembawa CC-C) | Barcode | structural |
fill-pdf-form | Isi AcroForm | Form | structural |
flatten-form-fields | Ratakan bidang formulir | Form | structural |
form-field-validation-and-flatten-with-state | Validasi bidang formulir dan ratakan dengan status | Form | structural |
Informasi dokumen
Bagian berjudul “Informasi dokumen”Atur metadata dan perilaku penampil.
| Resep | Fungsinya | Modul | Profil |
|---|---|---|---|
set-document-metadata | Atur metadata dokumen | Metadata | structural |
set-viewer-preferences | Atur preferensi penampil | Document | structural |
Operasi dokumen
Bagian berjudul “Operasi dokumen”Gabungkan, pisahkan, dan optimalkan dokumen yang sudah ada.
| Resep | Fungsinya | Modul | Profil |
|---|---|---|---|
merge-external-pdfs | Gabungkan PDF eksternal atau tambahkan halaman | Document | structural |
split-and-extract-pages | Pisahkan PDF dan ekstrak rentang halaman | Document | structural |
optimize-pdf-file-size | Kurangi ukuran berkas PDF dengan kompresi dan pembuatan subset | Document | structural |
Keamanan, tanda tangan, dan kesesuaian
Bagian berjudul “Keamanan, tanda tangan, dan kesesuaian”Gunakan enkripsi, penandatanganan, aksesibilitas, dan keluaran berprofil. Resep-resep ini menjaga batas support≠conformance dan presence≠validity pada halaman resep.
| Resep | Fungsinya | Modul | Profil |
|---|---|---|---|
encrypt-aes256 | Enkripsi dengan AES-256 dan atur bendera izin | Security | structural |
encrypt-with-permissions | Enkripsi dengan bendera izin | Security | structural |
sign-pades-b-b | Terapkan tanda tangan PAdES (B-B dan B-T) | Security | semantic |
inspect-existing-signature | Periksa tanda tangan yang sudah ada | Inspect | semantic |
tagged-pdf-ua2 | Hasilkan struktur bertag untuk PDF/UA-2 | Accessibility | semantic |
accessible-pdfua2-from-html | Hasilkan struktur bertag untuk penulisan PDF/UA-2 yang dapat diakses dari HTML | Accessibility | semantic |
pdf-a-4-output | Hasilkan keluaran PDF/A-4 | Conformance | semantic |
pdfa4-conformance-gate | Hasilkan keluaran PDF/A-4 dan terapkan gerbang pada validator eksternal | Conformance | semantic |
validate-conformance | Validasi terhadap profil kesesuaian | Compliance | semantic |
Inspeksi dan ekstraksi
Bagian berjudul “Inspeksi dan ekstraksi”Baca ulang konten dan struktur dari sebuah PDF.
| Resep | Fungsinya | Modul | Profil |
|---|---|---|---|
extract-text-content | Ekstrak konten teks | Text | semantic |
multilingual-copy-paste-extraction | Buat PDF CJK dan Arab yang benar saat disalin-tempel | Text | structural |
parse-and-inspect-pdf | Urai dan periksa PDF | Inspect | semantic |
inspect-layout-boxes | Periksa kotak tata letak | Inspect | semantic |
Lintas bidang
Bagian berjudul “Lintas bidang”Gunakan pola yang mencakup beberapa modul.
| Resep | Fungsinya | Cakupan | Profil |
|---|---|---|---|
worker-safe-batch-rendering | Render secara aman di worker yang berjalan lama (registri bersama, memori terbatas) | Core · Performance · Support | semantic |
streaming-and-memory | Profilkan streaming dan penggunaan memori | Performance | bitwise |
exception-aware-error-handling | Tangani galat dengan hierarki eksepsi NextPDF | Exception · Contracts | structural |
custom-error-recovery-patterns | Terapkan pemulihan galat khusus dan strategi coba-ulang | Exception | semantic |
observe-with-opentelemetry | Amati renderer dengan OpenTelemetry | Observability · Telemetry · Event | semantic |
Setiap resep di atas dipublikasikan dengan skrip pendukung examples/*.php dan rangka uji tests/Cookbook/Php/ di repositori inti. Ketika resep baru ditulis di hulu, resep tersebut muncul di sini setelah contoh dan ujinya tersedia.
Lihat juga
Bagian berjudul “Lihat juga”- Buku resep integrasi — indeks integrasi framework, renderer, dan layanan.
- Konvensi resep — kontrak yang diikuti setiap resep yang dapat dijalankan dalam cookbook ini.