Ga naar inhoud
getnextpdf.com

Problemen oplossen

Gebruik deze kennisbank om een fout die optreedt te koppelen aan de oorzaak en de bijbehorende oplossing. Elke vermelding is gebaseerd op de eigen exception-klassen, faalpad-tests en broncodebewaking van de engine, niet op speculatie. Als de engine voor een bepaalde fout geen codepad heeft, verzint deze kennisbank er ook geen.

Deze kennisbank bevat vier onderwerppagina’s:

  • Validatie van handtekeningen — ongeldige handtekeningen, onvolledige ketens, onbekende intrekkingsstatus en tijdstempelfouten.
  • Validatie van PDF/A en PDF/UA — problemen met Portable Document Format/Archive (PDF/A) en Portable Document Format/Universal Accessibility (PDF/UA), waaronder een ontbrekende output intent, niet-getagde content, een ontbrekende taalinstelling en fouten bij ingesloten lettertypen.
  • Lettertypen en tagging — niet-gevonden lettertypen, subsetting, CJK-dekking en problemen met de structuurboom.
  • Versleuteling en machtigingen — ontsleutelingsfouten en de begrenzing van de machtigingsvlag.

Elke vermelding bestaat uit vijf onderdelen:

  1. Symptoom — wat zichtbaar is: een exception-klasse, een fragment van een bericht of een oordeel van een downstream-validator.
  2. Waarschijnlijke oorzaak — de invoer- of configuratievoorwaarde die de engine meldt.
  3. Bewijs / diagnose — hoe de oorzaak wordt bevestigd. Dit onderdeel noemt de exacte exception-klasse, het getContext()-veld of de test die het gedrag aantoont, zodat verificatie mogelijk is in plaats van giswerk.
  4. Oplossing — de opeenvolgende stappen om de oorzaak weg te nemen.
  5. Gerelateerd — de modulereferentiepagina of verwante vermelding om daarna te raadplegen.

NextPDF identificeert een fout aan de hand van de PHP-klasse, niet aan de hand van een foutcode als tekenreeks. Er bestaat geen NPDF-####-constante in de exception-klassen. Vang de leaf-exception op wanneer een gerichte reactie nodig is en lees ContextAwareExceptionInterface::getContext() voor gestructureerde diagnostische velden. Gebruik NextPDF\Exception\NextPdfException als basistype; voor beveiligingsfouten geldt daarnaast NextPDF\Security\Exception\SecurityException.

Lees voor de volledige hiërarchie en de regels voor de catch-volgorde de exception-referentie.

<?php
declare(strict_types=1);
use NextPDF\Exception\NextPdfException;
use NextPDF\Contracts\ContextAwareExceptionInterface;
try {
// ... engine call ...
} catch (NextPdfException $e) {
$context = $e instanceof ContextAwareExceptionInterface
? $e->getContext()
: [];
\error_log($e->getMessage());
// $context carries snake_case primitive fields safe to serialize.
}

Deze kennisbank beschrijft hoe de engine fouten detecteert en meldt. De kennisbank behandelt geen conformiteitsoordelen van externe validators, zoals veraPDF of callas; die tools passen hun eigen regelsets toe. Wanneer de engine een bewerking weigert om een document binnen een profiel te houden, zoals het weigeren van versleuteling onder PDF/A, verwijst de betreffende vermelding naar de bepalende clausule en de exception die dat afdwingt.

Woordenlijst: context-aware exception