ApplyOCRTextLayer

OCR, testo, modifica dei documenti

Descrizione

Convalida JSON OCR indipendente dal provider e aggiunge a una pagina testo adattato in modalità di rendering 3

Il testo aggiunto è ricercabile e selezionabile ma invisibile durante il rendering della pagina

Sintassi

Delphi

Function TPDFlib.ApplyOCRTextLayer(Page: Integer; Const ResultJSON,
  FontName: WideString; MinConfidence: Double): Integer;

ActiveX

Function PDFlib::ApplyOCRTextLayer(Page As Long, ResultJSON As String, FontName As String, MinConfidence As Double) As Long

DLL

int DLApplyOCRTextLayer(int InstanceID, int Page, const wchar_t* ResultJSON,
  const wchar_t* FontName, double MinConfidence);
int DLApplyOCRTextLayerA(int InstanceID, int Page, const char* ResultJSON,
  const char* FontName, double MinConfidence);

Parametri

PageLa pagina di destinazione a base 1
ResultJSONUn oggetto risultato OCR con versione
FontNameNome o percorso di un font TrueType incorporabile oppure stringa vuota per selezionare un fallback installato
MinConfidenceLa soglia di confidenza inclusiva da 0 a 1

Schema JSON

{
  "version": 1,
  "width": 2480,
  "height": 3508,
  "words": [
    {"text": "Invoice", "left": 120, "top": 180,
     "width": 260, "height": 54, "confidence": 0.98}
  ]
}

left e top usano un'origine in alto a sinistra nelle unità della sorgente

Quando sono presenti sia width sia height, i riquadri delle parole vengono scalati da tali dimensioni alla pagina PDF; quando entrambi sono omessi, le coordinate sono interpretate come punti PDF

Ogni parola richiede text, left, top, width e height; confidence è facoltativo e vale 1

Geometria finita e non negativa con larghezza e altezza positive; confidenza da 0 a 1

Valori restituiti

1Il livello di testo è stato aggiunto oppure nessuna parola ha raggiunto la soglia
0Convalida o scrittura non riuscita

Note

L'intera struttura JSON e ogni limite di parola vengono convalidati prima di scrivere il contenuto della pagina

Le dimensioni di ogni parola derivano dall'altezza del relativo riquadro e la parola viene adattata orizzontalmente tramite la scalatura del testo, mentre uno stato grafico isolato impedisce alla formattazione OCR di propagarsi alle operazioni di disegno successive

LastErrorCode è 110 per JSON OCR non valido e 307 per errori di scrittura di pagina, font o livello di testo

LastOCRError fornisce il motivo dettagliato

Vedere anche

OCRPage, OCRDocument, LastOCRError, RenderPageToString