Verticaal CJK-schrift via Connect
Verticaal CJK-schrift via Connect
Sectie met titel “Verticaal CJK-schrift via Connect”In een oogopslag
Sectie met titel “In een oogopslag”In dit recipe bed je een Chinees, Japans en Koreaans (CJK) CIDFont met metrieken voor verticaal schrift in via de Connect-transporten. De engine emitteert volgens PDF 2.0 vermeldingen voor verticale metrieken (/W2 per glyph en /DW2 standaard) in het CIDFont-woordenboek en rendert een glyphstapel van boven naar beneden. Het inbedden van CJK-lettertypen valt onder de Enterprise-tier. De CJK-lettertypetools worden via class_exists()-probes gedetecteerd en registreren zich alleen wanneer nextpdf/premium naast de server is geïnstalleerd. De engine emitteert verticale metrieken alleen wanneer de actieve CID-codering de verticale Identity-codering is. Horizontale tekst blijft ongewijzigd.
Installatie
Sectie met titel “Installatie”composer require nextpdf/serverControleer met een tools/list-aanroep of de CJK-lettertypetools uit de Enterprise-tier aanwezig zijn. Zie /connect/tool-catalog/.
Conceptueel overzicht
Sectie met titel “Conceptueel overzicht”Een CIDFont in verticale-schriftmodus gebruikt /W2 (per glyph) en /DW2 (standaard) verticale metrieken (ISO 32000-2 §9.7). De CMap selecteert de horizontale of verticale schriftmodus (ISO 32000-2 §9.7). De verticale-schriftmodus verplaatst de glyphvoortgang naar de verticale as (ISO 32000-2 §9.7). Wanneer je het lettertype registreert, parseert de pipeline de verticale-metriektabellen van het lettertype. De woordenboekvermeldingen worden pas geëmitteerd nadat je de verticale CID-codering selecteert.
API-oppervlak
Sectie met titel “API-oppervlak”Controleer toolnamen aan de hand van het actieve register met tools/list. De gezaghebbende catalogus is /connect/tool-catalog/. Dit recipe vermeldt het aantal tools niet opnieuw.
Codevoorbeeld — Snelstart
Sectie met titel “Codevoorbeeld — Snelstart”Maak het document aan, registreer het CJK-lettertype en selecteer de verticale codering:
{ "jsonrpc": "2.0", "id": 5, "method": "tools/call", "params": { "name": "add_cjk_font", "arguments": { "document_id": "<id>", "family": "NotoSansCJKjp", "source": "/usr/share/fonts/opentype/noto/NotoSansCJKjp-Regular.otf", "subset": true } }}Codevoorbeeld — Productie
Sectie met titel “Codevoorbeeld — Productie”Selecteer de verticale codering, stel het lettertype in, schrijf verticale tekst en inspecteer daarna het geëmitteerde CIDFont-woordenboek:
{ "jsonrpc": "2.0", "id": 7, "method": "tools/call", "params": { "name": "set_cid_encoding", "arguments": { "document_id": "<id>", "font_key": "NotoSansCJKjp", "encoding": "/Identity-V" } }}Het CIDFont-woordenboek in de uitvoer bevat /W2 en /DW2. Dezelfde broncode laat beide weg wanneer je met de horizontale codering rendert. De codering is het enige verschil, waardoor het reproduceerbaarheidsprofiel structural hier nauwkeurig blijft.
Randgevallen en valkuilen
Sectie met titel “Randgevallen en valkuilen”- Lettertype mist verticale-metriektabellen. De lettertypetool geeft een waarschuwing. Kies een CJK-lettertype dat ze bevat; een uitsluitend Latijns lettertype heeft er geen.
- Verticale codering geselecteerd voor een lettertype zonder verticale metrieken is een fout. Val terug op de horizontale codering of kies een ander lettertype.
- Verticale tekst aangevraagd terwijl de horizontale codering actief is is een fout. Selecteer de verticale codering voordat je voor het eerst verticale tekst emitteert.
- Codering gewisseld na de eerste tekstemissie wordt afgewezen met een fout over de bevroren codering. Stel de codering onmiddellijk in nadat je het lettertype hebt geregistreerd.
- Tool afwezig. Zonder
nextpdf/premiumworden de CJK-lettertypetools uit de Enterprise-tier niet geregistreerd en mislukt de aanroep met een fout over een onbekende tool.
Prestaties
Sectie met titel “Prestaties”Het frontmatter-budget is een documentatielimiet. Subsetting beperkt de grootte van de array met metrieken per glyph. Schakel subsetting alleen uit wanneer verticale tekst glyphs nodig heeft die de subset zou weglaten.
Beveiligingsopmerkingen
Sectie met titel “Beveiligingsopmerkingen”Geen aanvullende opmerkingen naast de algemene richtlijnen voor het Connect-transport.
Conformiteit
Sectie met titel “Conformiteit”| Bewering | Clausule | reference_id |
|---|---|---|
Een verticaal CIDFont gebruikt /W2- en /DW2-metrieken | ISO 32000-2 §9.7 | |
| De CMap selecteert de horizontale versus verticale schriftmodus | ISO 32000-2 §9.7 | |
| De verticale-schriftmodus laat glyphs langs de verticale as voortgaan | ISO 32000-2 §9.7 |
Het emitteren van de vermeldingen voor verticale metrieken implementeert de aangehaalde clausules. Dit is geen algemene conformiteitsbewering. Een validator bepaalt of het document als geheel conform is.
Commerciële context
Sectie met titel “Commerciële context”Het inbedden van CJK-lettertypen valt onder de Enterprise-tier. De CJK-lettertypetools registreren zich alleen wanneer nextpdf/premium naast de server is geïnstalleerd.
Connect-specifieke aspecten
Sectie met titel “Connect-specifieke aspecten”Transportbeschikbaarheid (MCP / REST / gRPC)
Sectie met titel “Transportbeschikbaarheid (MCP / REST / gRPC)”Je roept dit op dezelfde manier aan via MCP tools/call, het REST-toolendpoint en de gRPC-service. Alle drie verlopen via de gedeelde tooluitvoerder.
HITL-risiconiveau
Sectie met titel “HITL-risiconiveau”Lettertyperegistratie, coderingsselectie en tekstemissie vallen onder risiconiveau caution. Bij uitvoer is goedkeuring vereist wanneer er een bestand wordt geschreven; in de base64-modus niet. Zie /connect/hitl-risk-niveaus/.
JSON-envelop voor de bevestigingspoort
Sectie met titel “JSON-envelop voor de bevestigingspoort”Wanneer het uitvoerpad dat een bestand schrijft via een poort verloopt, retourneert de poort een uitdagingsenvelop en een token voor eenmalig gebruik dat is gebonden aan de toolnaam, een nonce en een TTL van 300 seconden. Roep opnieuw aan met arguments._confirmation_token. Zie /connect/hitl-risk-niveaus/.
Zie ook
Sectie met titel “Zie ook”- /cookbook/connect/font-typography/ — basisprincipes van horizontale tekst en lettertypeselectie.
- /cookbook/connect/conformance-mode/ — verticale CJK-teksten vereisen nog steeds tagging voor PDF/UA-2.
- /connect/tool-catalog/ — berekening van de toolset per tier.
- /connect/hitl-risk-niveaus/ — het risicomodel en de poort.