Lewati ke konten

Memeriksa kondisi tata letak dengan NextPDF Connect

Periksa kondisi tata letak dokumen selama sesi berlangsung agar Anda dapat mengambil keputusan penempatan dengan percaya diri. preview_layout — yang telah diverifikasi ulang terhadap registri alat server, tempat PreviewLayoutTool mengekspos nama protokol preview_layout — adalah kueri hanya-baca yang idempoten. Alat ini tidak merender PDF, tidak memajukan kursor, dan dapat dipanggil berapa kali pun. Semua alat berikut termasuk Core: create_pdf, set_font, add_text, preview_layout, add_page, dan output_pdf.

Terminal window
composer require nextpdf/server

Ikat sebuah transport. Anda tidak memerlukan tingkat berlisensi.

preview_layout mengembalikan jumlah halaman, halaman saat ini, dimensi halaman, margin, dan posisi kursor — atribut geometri yang dimiliki halaman itu sendiri (ISO 32000-2 §7.7.3.3). Gunakan nilai tersebut untuk menghitung ruang vertikal yang tersisa:

remaining = page_height - bottom_margin - cursor_y

Jika remaining lebih besar daripada perkiraan tinggi blok berikutnya, lanjutkan di halaman saat ini. Jika tidak, panggil add_page terlebih dahulu. Karena panggilan ini bersifat hanya-baca, panggilan tersebut mengembalikan respons normal di setiap transport (PSR-18 §p2).

AlatPeranTingkat risiko
create_pdfMembuka sesiAman
set_fontMenetapkan fon aktifHati-hati
add_textMenulis teks, memajukan kursorHati-hati
preview_layoutMembaca kondisi tata letak (tanpa perubahan)Aman
add_pageMenambahkan halaman saat ruang tidak cukupHati-hati
output_pdfMerender dan mengembalikan PDFMemerlukan Persetujuan / Tinjauan (base64)

Katalog alat adalah sumber rujukan resmi. Alat yang tersedia bagi Anda bergantung pada tingkat yang dipasang.

  1. create_pdf (Letter portrait) → document_id.
  2. set_font (helvetica 14).
  3. add_text ×3 (paragraf rata kiri-kanan).
  4. preview_layout → baca page_dimensions, margins, cursor_position.
  5. Hitung remaining; jika terlalu kecil, add_page.
  6. add_text (bagian berikutnya).
  7. output_pdf.

Panggil preview_layout sebelum blok apa pun jika Anda tidak yakin blok tersebut akan muat. Anggap kursor yang dikembalikan akurat untuk penulisan terakhir. Jika Anda mengubah fon, margin, atau tinggi baris sejak add_text terakhir, tulis probe singkat dan kueri ulang sebelum mengandalkan posisi yang diprediksi.

  • Kursor usang setelah perubahan gaya. Posisi yang dilaporkan mencerminkan penulisan terakhir, bukan perubahan kondisi yang masih tertunda. Lakukan probe ulang jika presisi penting.
  • Sesi yang sudah dihancurkan. preview_layout gagal pada document_id yang sudah dihancurkan. Untuk memeriksa tata letak setelah keluaran, atur destroy: false pada output_pdf sebelumnya.
  • Teks kosong atau fon tidak dikenal. Galat validasi input standar berlaku.

preview_layout adalah operasi baca yang ringan. Profil untuk dokumen yang dihasilkan adalah structural.

Kueri ini bersifat hanya-baca dan tidak memiliki efek samping. Koordinat yang dikembalikan tidak sensitif, tetapi perlakukan sebagai data dalam lingkup sesi.

PernyataanSpesifikasiKlausulreference_id
Objek halaman mendefinisikan atribut geometrinya.ISO 32000-2§7.7.3.3
Kueri hanya-baca mengembalikan respons transport normal.PSR-18§p2

Tidak berlaku — semua alat termasuk dalam Core.

TransportTersediaCatatan
MCP (stdio)Yapreview_layout adalah tools/call.
RESTYaOperasi aman bergaya GET.
gRPCYaUnary; idempoten.

preview_layout bersifat Aman (hanya-baca) dan tidak pernah memicu gerbang. create_pdf bersifat Aman. set_font, add_text, dan add_page bersifat Hati-hati. output_pdf bersifat Memerlukan Persetujuan, diturunkan ke Tinjauan dalam mode base64 (Tingkat risiko HITL).

Pemeriksaan hanya-baca tidak pernah memicu gerbang:

{ "allowed": true }