Zum Inhalt springen
getnextpdf.com

Enterprise Edition

Intelligence

NextPDF Enterprise Intelligence wandelt rohe Schlüssel-Wert- und Tabellendaten in typisierte, optional schemavalidierte Strukturen um und orchestriert die Erzeugung durchsuchbarer PDFs, indem es ein OCR-Backend über gescannte Seiten ansteuert. Es beschreibt die Strukturen, die es erzeugt; es sichert keine OCR-Genauigkeit und keine Extraktions-Trefferquote zu.

Diese Funktion wird in NextPDF Enterprise (nextpdf/enterprise) ausgeliefert und aktiviert sich mit einer Lizenzhülle der Enterprise-Stufe. Ein Deployment ohne diese Berechtigung lädt die Klassen der Funktion nicht. Ein Deployment ohne aktive Enterprise-Berechtigung lädt diese Klassen nicht. Editionen vergleichen und eine Lizenz erwerben.

Terminal-Fenster
composer require nextpdf/enterprise:^3

Der strukturierte Extraktor nimmt rohe Schlüssel-Wert-Paare entgegen — vorgelagert von einem Accelerator oder einem heuristischen Parser erzeugt — und gibt typisierte Paarobjekte aus. Wird ein Schema bereitgestellt, behält er nur die Paare, deren Schlüssel mit einem Schemafeld übereinstimmt, und meldet, welche Pflichtfelder fehlen. Ein Paar ohne explizite Konfidenz erhält einen festen Standardwert. Dies ist ein Typisierungs- und Validierungsschritt über bereits extrahierte Daten; es ist selbst keine Extraktions- oder Erkennungs-Engine und weist keine berechnete Präzision zu.

Der Tabellen-Extraktor nimmt rohe Zeilengitter entgegen und baut strukturierte Tabellenergebnisse mit Objekten pro Zelle und synthetisierten, gleichmäßigen Begrenzungsrahmen, die durch Unterteilung eines normalisierten Seitenbereichs abgeleitet werden. Kurze Zeilen werden aufgefüllt, sodass jede Zeile die größte Spaltenzahl hat. Eine Tabelle ohne Zeilen oder ohne Spalten wird übersprungen. Die Begrenzungsrahmen sind eine gleichmäßige Gittersynthese, kein gemessenes Layout.

Der Orchestrator für durchsuchbare Overlays nimmt ein gescanntes oder gemischtes PDF entgegen, erkennt, welche Seiten keine nutzbare Textschicht haben, steuert das konfigurierte OCR-Backend an und erzeugt ein Ergebnis, das die Wortzahl pro Seite und eine durchschnittliche Konfidenz beschreibt. Unsichtbarer Text ist der Mechanismus für eine durchsuchbare gescannte Seite: Ein Text-Showing-Operator kann Glyphen platzieren, während der Textrenderingmodus so gesetzt ist, dass der Text weder gefüllt noch gestrichen wird — ISO 32000-2:2020 §9.3.3 —, und Text-Showing-Operatoren platzieren Glyphen im Content-Stream — ISO 32000-2:2020 §9.4. Wenn die Quelle getaggt ist, ordnet die Hierarchie der logischen Struktur Inhalte einer Lesereihenfolge zu — ISO 32000-2:2020 §14.7 —, die getaggte Struktur unterstützt die Wiederverwendung von Inhalten — ISO 32000-2:2020 §14.8 —, und Tabellenstrukturelemente beschreiben Zeilen und Zellen — ISO 32000-2:2020 §14.8.

Die eigentliche Rasterung und das Einfügen unsichtbaren Texts werden von einem separaten Sidecar-Prozess durchgeführt; die PHP-Oberfläche orchestriert den Workflow und erzeugt die Ergebnis-Metadaten. Die Ausgabe eines Overlay-Laufs ist ein abgeleitetes Dokument: Jede vorhandene Signatur wird ungültig, und der Compliance-Status erfordert eine erneute Validierung. Konfidenzwerte sind Passthrough oder feste Standardwerte, keine garantierte Genauigkeitsangabe.

Die Oberfläche zieht eine harte Trennlinie zwischen Strukturierung und Erkennung. Typisierung und Schemavalidierung laufen in-process, weil sie deterministisch und günstig sind. Erkennung — Rasterung und Einfügen unsichtbaren Texts — wird an ein injiziertes OCR-Backend und einen separaten Sidecar delegiert, weil sie schwergewichtig, backend-spezifisch und am besten außerhalb der PHP-Vertrauensgrenze aufgehoben ist. Diese Trennung lässt ein Deployment wählen, wo Dokumentbilder und erkannter Text berechnet und gespeichert werden, ohne den aufrufenden Code zu ändern. Das Modul weigert sich außerdem, eine Präzisionsangabe zu erfinden: Ein unbeschriftetes Paar erhält einen festen Standardwert, und die gemeldete Konfidenz wird durchgereicht statt berechnet. Ein Aufrufer bekommt niemals eine erfundene Genauigkeitszahl übergeben.

Design-Hintergrund: Eine API, die sich weigert zu raten.

TypArtRolleStabilitätSeit
StructuredExtractorclassTypisiert rohe Schlüssel-Wert-Paare; Schemafilter und Pflichtfeldprüfungstable2.2.0
ExtractionSchema / SchemaFieldclassesFelddefinitionen und Pflichtfeldmengestable2.2.0
KeyValuePairclassEin typisiertes Schlüssel-Wert-Paar mit Konfidenzstable2.2.0
TableExtractorclassBaut strukturierte Tabellen aus rohen Zeilengitternstable2.2.0
TableResult / TableCellclassesTabellenform mit Text, Konfidenz und Begrenzungsrahmen pro Zellestable2.2.0
SearchableOverlayclassOrchestriert OCR-gestützte Erzeugung durchsuchbarer PDFsstable2.2.0
OverlayConfig / OverlayQualityclassesSprachhinweis, DPI, Qualitäts-Preset, Überspringen nativer Seitenstable2.2.0
SearchableOverlayResult / PageOverlayInfoclassesWortzahl pro Seite und durchschnittliche Konfidenzstable2.2.0
ExtractionConfig / ExtractionStrategyclassesHeuristische vs. OCR-gestützte Strategie und OCR-Hinweisestable2.2.0

Das OCR-Backend ist ein injizierter Vertrag. Der Orchestrator bettet kein OCR-Modell ein; ein Deployment liefert das Backend und ist dafür verantwortlich, wo OCR berechnet wird.

Type and schema-validate raw key-value pairs
<?php
declare(strict_types=1);
require_once __DIR__ . '/vendor/autoload.php';
use NextPDF\Enterprise\Intelligence\StructuredExtractor;
use NextPDF\Enterprise\Intelligence\ExtractionSchema;
/**
* Type raw pairs against a schema and list any missing required fields.
*
* @param list<array{key: string, value: string, confidence?: float}> $rawPairs Upstream key-value data.
*
* @return list<string> Missing required field names (empty when compliant).
*/
function validate(array $rawPairs, ExtractionSchema $schema): array
{
$extractor = new StructuredExtractor();
$pairs = $extractor->extract($rawPairs, $schema);
return $extractor->validateSchema($schema, $pairs);
}

Der Extraktor typisiert und filtert Daten, die ein vorgelagerter Schritt bereits erzeugt hat. Er führt selbst keine Erkennung durch.

Searchable-overlay orchestration with safe logging
<?php
declare(strict_types=1);
require_once __DIR__ . '/vendor/autoload.php';
use NextPDF\Enterprise\Accelerator\OcrStrategyInterface;
use NextPDF\Enterprise\Intelligence\OverlayConfig;
use NextPDF\Enterprise\Intelligence\SearchableOverlay;
use Psr\Log\LoggerInterface;
final readonly class OverlayJob
{
public function __construct(
private OcrStrategyInterface $ocr,
private LoggerInterface $logger,
) {}
/**
* Generate a searchable PDF from a scanned input.
*
* @param string $pdfData Scanned or mixed PDF bytes.
*
* @return string The derived searchable PDF bytes.
*/
public function run(string $pdfData): string
{
try {
$result = (new SearchableOverlay($this->ocr))
->generate($pdfData, new OverlayConfig(language: 'eng'));
$this->logger->info('Overlay complete', [
'pages' => $result->pageCount,
'words' => $result->wordCount,
]);
return $result->pdfData;
} catch (\Throwable $e) {
$this->logger->error('Overlay failed', ['error' => $e->getMessage()]);
throw $e;
}
}
}

Das Log trägt nur Seiten- und Wortzahlen. Es trägt keinen erkannten Text und keine Dokumentbytes. Der Catch wirft erneut; er verschluckt den Fehler nicht.

  • Der strukturierte Extraktor und der Tabellen-Extraktor verbrauchen bereits extrahierte Daten. Sie parsen kein PDF, führen kein Modell aus und messen keine Präzision. Konfidenz ist Passthrough oder ein fester Standardwert.
  • Synthetisierte Tabellen-Begrenzungsrahmen sind eine gleichmäßige Gitterunterteilung, kein gemessenes Layout. Ein Aufrufer, der echte Geometrie benötigt, muss sie anderweitig beschaffen.
  • Das durchsuchbare Overlay ist ein abgeleitetes Dokument. Jede vorhandene digitale Signatur wird ungültig; der Compliance-Status muss nach dem Overlay erneut validiert werden.
  • Wenn das OCR-Backend nicht verfügbar ist, tragen die betroffenen Seiten null Wörter bei, statt den gesamten Lauf stillschweigend scheitern zu lassen — prüfen Sie das Ergebnis pro Seite.
  • Eine Seite, die bereits eine nutzbare native Textschicht hat, wird standardmäßig übersprungen. Deaktivieren Sie das Überspringen in der Konfiguration, wenn Sie erneut OCR durchführen müssen.
  • Die OCR-Genauigkeit hängt vollständig vom bereitgestellten Backend, der Eingabequalität und dem Sprachhinweis ab. NextPDF sichert keine Erkennungsgenauigkeit und keine Extraktions-Trefferquote zu.

Strukturierte und Tabellenextraktion sind linear zur Eingabegröße. Die Kosten des durchsuchbaren Overlays werden vom OCR-Backend und der Rasterung des Sidecars bei der konfigurierten DPI dominiert; der Orchestrierungsaufwand ist gering. Seiten- und Größeneingaben sind begrenzt und scheitern bei Überlauf fail-closed. Das Reproduzierbarkeitsprofil ist structural: Die Extraktion ist für feste Eingaben deterministisch, während die Overlay-Ausgabe vom OCR-Backend abhängt und zwischen Backends oder Versionen variieren kann.

Die Extraktoren sind schreibgeschützte Strukturierungsschritte. Die Overlay-Oberfläche erzeugt ein abgeleitetes Dokument und begrenzt Eingabegröße und Seitenzahl, wobei sie bei Überlauf fail-closed scheitert. Das OCR-Backend ist ein Integrationspunkt, nicht Teil der Vertrauensgrenze; ein Deployment wählt es aus und betreibt es. In diesem Modul findet keine kryptografische Operation statt, daher erhebt es keinen FIPS-Anspruch.

Strukturierte und Tabellenextraktion laufen in-process auf dem Host. Die Orchestrierung durchsuchbarer Overlays steuert ein injiziertes OCR-Backend an: Wo dieses Backend läuft — in-process, in einem lokalen Sidecar oder einem Remote-Dienst — und damit, wo Dokumentbilder und erkannter Text berechnet und gespeichert werden, ist eine Deployment-Verantwortung außerhalb der Grenze der Bibliothek. Enthält die Eingabe personenbezogene Daten, gilt dies auch für die erkannte Textschicht; behandeln Sie das abgeleitete Dokument entsprechend.

Die Bibliothek wirft typisierte Ausnahmen mit strukturellen Meldungen und legt keine Dokumentbytes und keinen erkannten Text in den Ausnahmetext. Ein Deployment, das um diese Oberfläche herum protokolliert, sollte Zählwerte und Konfiguration protokollieren — wie im Produktionsbeispiel gezeigt — und darf die rohe PDF-Nutzlast oder den erkannten Text nicht in Logs oder ein APM-Backend protokollieren.

In diesem Modul findet keine kryptografische Operation statt, daher gibt es kein FIPS-modusspezifisches Verhalten.

AnspruchStandardKlausel
Der Textrenderingmodus steuert, ob Glyphen gefüllt, gestrichen oder keines von beidem sind (die Grundlage für unsichtbaren OCR-Text).ISO 32000-2:2020§9.3.3
Text-Showing-Operatoren platzieren Glyphen im Content-Stream.ISO 32000-2:2020§9.4
Die Hierarchie der logischen Struktur ordnet Inhalte einer Lesereihenfolge zu.ISO 32000-2:2020§14.7
Die getaggte Struktur unterstützt die Wiederverwendung von Inhalten.ISO 32000-2:2020§14.8
Tabellenstrukturelemente beschreiben Zeilen und Zellen.ISO 32000-2:2020§14.8
Der Strukturbaum ordnet Inhalte einer Lesereihenfolge zu.ISO 32000-2:2020§14.7

Alle Klauseln sind paraphrasiert. NextPDF gibt keinen normativen Text wieder. Konsultieren Sie den veröffentlichten Standard für den verbindlichen Wortlaut. NextPDF erhebt keinen Anspruch auf OCR-Genauigkeit oder Extraktions-Trefferquote; diese Seite nennt die erzeugten Strukturen und die Orchestrierungsgrenze, keine Qualitätsgarantie.

  • Der strukturierte Extraktor und der Tabellen-Extraktor verbrauchen bereits extrahierte Daten; sie parsen kein PDF, führen kein Modell aus und messen keine Präzision. Konfidenz ist Passthrough oder ein fester Standardwert.
  • Ein Schemafilter behält nur Paare, deren Schlüssel mit einem Schemafeld übereinstimmt, und meldet die fehlenden Pflichtfelder; synthetisierte Tabellen-Begrenzungsrahmen sind eine gleichmäßige Gitterunterteilung, kein gemessenes Layout.
  • Das durchsuchbare Overlay ist ein abgeleitetes Dokument: Jede vorhandene digitale Signatur wird ungültig, und der Compliance-Status muss erneut validiert werden.
  • Wenn das OCR-Backend nicht verfügbar ist, tragen die betroffenen Seiten null Wörter bei, statt den gesamten Lauf stillschweigend scheitern zu lassen; eine Seite mit einer nutzbaren nativen Textschicht wird standardmäßig übersprungen.
  • Seiten- und Größeneingaben sind begrenzt und scheitern bei Überlauf fail-closed. Die Extraktion ist für feste Eingaben deterministisch; die Overlay-Ausgabe hängt vom bereitgestellten OCR-Backend ab.

Diese Seite dokumentiert ausschließlich extern beobachtbares Verhalten und die unterstützte öffentliche API-Oberfläche. Interne Namespace-Pfade, Hilfsklassen, Mechanismustabellen, Runbook-Dateinamen und Ticket-Präfixe liegen außerhalb des Umfangs.

NextPDF Core (Apache-2.0) hat keine Orchestrierung durchsuchbarer Overlays und keine schemavalidierte Strukturierungsoberfläche — keine; diese Funktion hat kein Äquivalent in der Core-Stufe. Das Core-AST-Modell ist die Basis für geparste Dokumente, keine Extraktions- oder OCR-Oberfläche.

NextPDF Pro liefert strukturelle, AST-gesteuerte Extraktion über ein bereits geparstes Dokument; es stellt keine schemavalidierte Schlüssel-Wert-Strukturierung, keine Tabellenrekonstruktion aus rohen Gittern und keine OCR-gestützte Orchestrierung durchsuchbarer Overlays bereit. Diese werden ausschließlich im Paket nextpdf/enterprise ausgeliefert.

Der strukturierte Extraktor und der Tabellen-Extraktor sowie der Overlay-Orchestrator werden auf Verhaltensebene beschrieben. Die eigentliche Rasterung und das Einfügen unsichtbaren Texts laufen in einem separaten Sidecar-Prozess; die Sidecar-Interna, das OCR-Modell und jegliches interne Orchestrierungsdetail liegen außerhalb des Umfangs der öffentlichen Oberfläche. Das OCR-Backend ist ein injizierter Vertrag, der vom Deployment bereitgestellt wird.

Das Deployment liefert und betreibt das OCR-Backend und wählt, wo OCR berechnet wird (in-process, in einem lokalen Sidecar oder einem Remote-Dienst) — und damit, wo Dokumentbilder und erkannter Text berechnet und gespeichert werden. NextPDF Enterprise orchestriert den Workflow und erzeugt Ergebnis-Metadaten; es bettet kein OCR-Modell ein und garantiert keine Erkennungsgenauigkeit und keine Extraktions-Trefferquote.

Auf die Intelligence-Oberfläche findet keine exportkontrollrechtliche Beschränkung Anwendung. Die Bibliothek sichert keine OCR-Genauigkeit und keine Extraktions-Trefferquote zu und keinen regulatorischen Compliance-Status. Diese Dokumentation ist kein Rechtsgutachten; konsultieren Sie Ihre eigenen Compliance- und Rechtsberater.