ApplyOCRTextLayerEx

OCR, tekst, edycja dokumentu

Opis

Waliduje JSON OCR niezależny od dostawcy, przygotowuje tekst niewidoczny w osobnym buforze i zatwierdza na jednej stronie należącą do biblioteki wyszukiwalną warstwę tekstu

Składnia

Delphi

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

ActiveX

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

DLL

int DLApplyOCRTextLayerEx(int InstanceID, int Page, const wchar_t* ResultJSON,
  const wchar_t* FontName, double MinConfidence, int Options);
int DLApplyOCRTextLayerExA(int InstanceID, int Page, const char* ResultJSON,
  const char* FontName, double MinConfidence, int Options);

Parametry

PageStrona docelowa numerowana od 1
ResultJSONSchemat w wersji 1 opisany w dokumentacji ApplyOCRTextLayer, opcjonalnie z zweryfikowanymi punktami końcowymi linii bazowej i identyfikatorami hierarchii
FontNameCzcionka TrueType nadająca się do osadzenia albo pusty ciąg, aby wybrać zapasową czcionkę zainstalowaną w systemie
MinConfidenceDomknięty od 0 do 1 próg pewności słowa
OptionsBitowa kombinacja poniższych zasad warstw; zero dołącza nową warstwę należącą do biblioteki

Opcje

1 — PDF_OCR_SKIP_EXISTING_TEXTZwraca sukces bez uruchamiania OCR, gdy zachowany strumień treści nienależący do biblioteki albo wywoływany Form XObject zawiera tekst, również tekst niewidoczny
2 — PDF_OCR_REPLACE_OWNED_LAYERZastępuje każdą istniejącą warstwę o dokładnie pasującym znaczniku OCR biblioteki; dołącza nową, gdy brak warstwy OCR należącej do biblioteki
3Pomija strony z tekstem nienależącym do biblioteki, pozwalając jednocześnie zastępować strony, których tekst pochodzi wyłącznie z warstw OCR biblioteki

Wartości zwracane

1Warstwa została zatwierdzona, zasada istniejącego tekstu pominęła stronę albo żadne słowo nie osiągnęło progu pewności
0Nie powiodły się dane wejściowe, geometria, opcje, kodowanie czcionki albo zapis warstwy

Uwagi

Nieznane bity opcji są odrzucane

Współrzędne źródłowe używają lewego górnego narożnika wyrenderowanego obrazu i wybranego prostokąta renderowania; obrót strony i niezerowe przesunięcia prostokąta są mapowane z powrotem do pierwotnej przestrzeni użytkownika PDF

Opcjonalna tablica baseline zawiera [x1, y1, x2, y2] w jednostkach źródłowych i definiuje kierunek tekstu oraz postęp; pełna linia bazowa nie może jednocześnie mieć niezerowego textAngle

Każda granica słowa i linia bazowa są sprawdzane przed filtrowaniem po pewności; nieprawidłowe słowo o niskiej pewności i tak powoduje niepowodzenie operacji

Dopasowanie czcionki i obsługa brakujących glifów kończą się przed zatwierdzeniem nowej warstwy treści; częściowo narysowane słowa OCR nie zastępują starej warstwy

Warstwami OCR należącymi do biblioteki są wyłącznie strumienie ze wszystkimi trzema dokładnymi polami /PDFlibOCROwner /PDFlibPas, /PDFlibOCRType /InvisibleText i /PDFlibOCRVersion 1

Zastąpienie tworzy nową tablicę contents i nowy strumień, zachowując treść nienależącą do biblioteki oraz strumienie używane przez strony sąsiednie

Warstwa OCR używa trybu renderowania 3 i odizolowanego stanu grafiki; umieszczenie anuluje bieżącą macierz transformacji zachowanej treści przed zastosowaniem macierzy słowa

Pusty zaakceptowany wynik pozostawia stare warstwy bez zmian; użyj GetOCRDiagnosticsJSON, aby rozróżnić empty, skipped, appended i replaced

Wyszukiwalność i niezmienione widoczne piksele są weryfikowane po zapisaniu i ponownym wczytaniu dokumentu

Zobacz również

OCRPageEx, OCRDocumentEx, ConfigureTesseractOCR, GetOCRDiagnosticsJSON, LastOCRError