Een document met meerdere pagina's maken met NextPDF Connect
In het kort
Sectie met titel “In het kort”Maak een document met meerdere pagina’s met NextPDF Connect. add_page voegt een pagina toe die de standaardgeometrie van het document erft, of waaraan je expliciet een eigen oriëntatie meegeeft. Na elke add_page springt de cursor terug naar de linkerbovenmarge op de nieuwe pagina. Je gebruikt vier Core-tools: create_pdf, add_text, add_page en output_pdf.
Installeren
Sectie met titel “Installeren”composer require nextpdf/serverKoppel een transport: Model Context Protocol (MCP) stdio, REST of gRPC. Je hebt geen gelicentieerd niveau nodig.
Conceptueel overzicht
Sectie met titel “Conceptueel overzicht”Een document gebruikt een paginaboom. Je bereikt elke pagina via die boom (ISO 32000-2 §7.7.3). Een pagina heeft eigen geometrie-attributen, waaronder de media box die het zichtbare gebied definieert (ISO 32000-2 §7.7.3.3). create_pdf maakt de eerste pagina automatisch aan, en add_page voegt elke volgende pagina toe. Laat page_size/orientation weg als je de standaardwaarde van het document wilt erven. Stel orientation: "landscape" in om van een A4-pagina 297×210 mm te maken.
API-oppervlak
Sectie met titel “API-oppervlak”| Tool | Rol | Risiconiveau |
|---|---|---|
create_pdf | Opent de sessie en maakt de eerste pagina aan | Veilig |
add_text | Schrijft tekst op de cursorpositie | Voorzichtig |
add_page | Voegt een pagina toe (erven of overschrijven) | Voorzichtig |
output_pdf | Rendert de PDF en geeft die terug | Approval Required / Review (base64) |
Toolnamen zijn namen uit het registry-protocol. De toolcatalogus is de gezaghebbende bron. Welke tools beschikbaar zijn, hangt af van het geïnstalleerde niveau.
Codevoorbeeld — snelstart
Sectie met titel “Codevoorbeeld — snelstart”In woorden:
create_pdf(A4 staand, titel, auteur) →document_id.add_text(titel, groot lettertype, gecentreerd), daarnaadd_text(inleidende alinea, bodylettertype).add_pagemet alleen dedocument_id→ erft A4 staand. Het nieuwepage_numberwordt teruggegeven en de cursor springt terug.add_textvoor de sectiekop en de tekst op pagina 2.add_pagemetorientation: "landscape"→ een brede A4-pagina.add_textvoor de inhoud op de brede pagina.output_pdf→ base64.
Codevoorbeeld — productie
Sectie met titel “Codevoorbeeld — productie”Valideer elke respons. Na add_page begint de inhoud boven aan de nieuwe pagina. Het terugspringen van de cursor is bedoeld gedrag, geen bug. Houd de position.page uit de responses van add_text bij om te detecteren wanneer de inhoud naar een latere pagina is doorgelopen. Roep output_pdf precies één keer aan en verwijder daarna de document_id.
Randgevallen en valkuilen
Sectie met titel “Randgevallen en valkuilen”- Cursor terug naar begin. Na
add_pagestaat de cursor op de linkerbovenmarge van de nieuwe pagina. Een veelgemaakte fout is te verwachten dat hij vanaf de vorige pagina doorloopt. - Verplichte
document_id. Elke tool behalvecreate_pdfvereist dedocument_id. Het weglaten ervan is een fout. - Ongeldige oriëntatie. Alleen
"portrait"en"landscape"zijn geldig. - Bewerken na uitvoer. Inhoud die na
output_pdfmetdestroy: truewordt toegevoegd, mislukt, omdat de sessie weg is.
Prestaties
Sectie met titel “Prestaties”Een tekstdocument met meerdere pagina’s blijft binnen het paginabudget, en de uitvoer is enkele KB. Het profiel is structural: de trailer-/ID en tijdstempels zijn niet stabiel tussen verschillende runs.
Beveiligingsnotities
Sectie met titel “Beveiligingsnotities”De base64-modus heeft geen neveneffecten. Bestandsuitvoer is afgeschermd; zie het gedeelte over human-in-the-loop (HITL). De document_id is een ondoorzichtige handle. Deel die niet tussen gelijktijdige verzoeken.
Conformiteit
Sectie met titel “Conformiteit”| Bewering | Specificatie | Clausule | reference_id |
|---|---|---|---|
| Pagina’s worden bereikt via de paginaboom. | ISO 32000-2 | §7.7.3 | |
| Een pagina-object definieert zijn eigen geometrie-attributen. | ISO 32000-2 | §7.7.3.3 |
Commerciële context
Sectie met titel “Commerciële context”Niet van toepassing — alle tools zijn Core.
Beschikbaarheid per transport
Sectie met titel “Beschikbaarheid per transport”| Transport | Beschikbaar | Opmerkingen |
|---|---|---|
| MCP (stdio) | Ja | tools/call per tool. |
| REST | Ja | Eén bewerking per tool. |
| gRPC | Ja | Unary per tool. |
HITL-risiconiveau
Sectie met titel “HITL-risiconiveau”create_pdf is Safe; add_text en add_page zijn Caution; output_pdf is Approval Required, in base64-modus verlaagd naar Review. Bestandsuitvoer blijft Approval Required. Zie output-approval en HITL-risiconiveaus.
JSON-envelop voor de bevestigingspoort
Sectie met titel “JSON-envelop voor de bevestigingspoort”Base64-uitvoer in dit geval:
{ "allowed": true }Het challenge-formulier staat in output-approval.