ApplyOCRTextLayer

OCR, tekst, edycja dokumentu

Opis

Sprawdza niezależny od dostawcy format JSON OCR i dodaje do strony dopasowany tekst w trybie renderowania 3

Dodany tekst można wyszukiwać i zaznaczać, lecz podczas renderowania strony pozostaje niewidoczny

Składnia

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);

Parametry

Page1-bazowa strona docelowa
ResultJSONWersjonowany obiekt wyniku OCR
FontNameNazwa lub ścieżka osadzalnej czcionki TrueType albo pusty ciąg, aby wybrać zainstalowaną czcionkę zastępczą
MinConfidenceWłączający próg ufności od 0 do 1

Schemat JSON

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

left i top używają początku układu w lewym górnym rogu, w jednostkach źródłowych

Gdy obecne są zarówno width, jak i height, prostokąty słów są skalowane z tych wymiarów źródłowych do strony PDF; gdy oba są pominięte, współrzędne są interpretowane jako punkty PDF

Każde słowo wymaga text, left, top, width i height; confidence jest opcjonalne i domyślnie ma wartość 1

Geometria musi być skończona i nieujemna, z dodatnią szerokością i wysokością, natomiast ufność musi mieścić się w zakresie od 0 do 1

Wartości zwracane

1Warstwa tekstowa została dodana albo żadne słowo nie osiągnęło progu
0Walidacja lub zapis nie powiodły się

Uwagi

Pełna struktura JSON i wszystkie granice słów są sprawdzane przed zapisaniem zawartości strony

Rozmiar każdego słowa jest wyprowadzany z wysokości jego prostokąta i dopasowywany poziomo za pomocą skalowania tekstu, a odizolowany stan grafiki zapobiega przenikaniu formatowania OCR do późniejszych operacji rysowania

LastErrorCode ma wartość 110 dla nieprawidłowego formatu JSON OCR oraz 307 dla niepowodzenia zapisu strony, czcionki lub warstwy tekstowej

LastOCRError podaje szczegółową przyczynę

Zobacz również

OCRPage, OCRDocument, LastOCRError, RenderPageToString