ApplyOCRTextLayerEx

OCR, texto, edición de documentos

Descripción

Valida JSON OCR independiente del proveedor, prepara el texto invisible en un búfer aparte y confirma en una página una capa de texto susceptible de búsqueda propia

Sintaxis

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

Parámetros

PageLa página de destino basada en uno
ResultJSONEl esquema de versión 1 descrito por ApplyOCRTextLayer, con puntos finales de línea base verificados e identificadores de jerarquía opcionales
FontNameUna fuente TrueType incrustable o una cadena vacía para seleccionar una fuente de sustitución instalada
MinConfidenceEl umbral inclusivo de confianza de palabra de 0 a 1
OptionsUna combinación bit a bit de las directivas de capa siguientes; cero añade una nueva capa propia

Opciones

1 — PDF_OCR_SKIP_EXISTING_TEXTDevuelve éxito sin aplicar OCR cuando un flujo de contenido retenido ajeno a la biblioteca o un Form XObject invocado contiene texto, incluido el texto invisible
2 — PDF_OCR_REPLACE_OWNED_LAYERReemplaza cada capa existente que lleve el marcador de OCR exacto de la biblioteca; añade si no existe ninguna capa de OCR propia
3Omite las páginas con texto ajeno, permitiendo al mismo tiempo reemplazar las páginas de OCR exclusivamente propias

Valores devueltos

1Se confirmó una capa, la directiva de texto existente omitió la página o ninguna palabra alcanzó el umbral de confianza
0La entrada, la geometría, las opciones, la codificación de la fuente o la escritura de la capa fallaron

Observaciones

Los bits de opción desconocidos se rechazan

Las coordenadas de origen utilizan el origen superior izquierdo de la imagen renderizada y el cuadro de renderización seleccionado; la rotación de la página y los desplazamientos de cuadro distintos de cero se remiten al espacio de usuario PDF original

Una matriz baseline opcional contiene [x1, y1, x2, y2] en unidades de origen y define la dirección del texto y su avance; una línea base completa no puede llevar además un textAngle distinto de cero

Cada límite de palabra y línea base se comprueba antes del filtrado por confianza; una palabra inválida con confianza baja también provoca el fallo de la operación

El ajuste de la fuente y el tratamiento de los glifos ausentes terminan antes de confirmar la nueva capa de contenido; ninguna palabra de OCR dibujada a medias sustituye a la capa anterior

Solo son capas de OCR propias los flujos con los tres campos exactos /PDFlibOCROwner /PDFlibPas, /PDFlibOCRType /InvisibleText y /PDFlibOCRVersion 1

El reemplazo crea una nueva matriz contents y un nuevo flujo, conservando el contenido ajeno y los flujos que utilizan las páginas hermanas

La capa de OCR utiliza el modo de renderización 3 y un estado gráfico aislado; la colocación cancela la matriz de transformación actual del contenido retenido antes de aplicar la matriz de la palabra

Un resultado aceptado vacío deja las capas anteriores intactas; utilice GetOCRDiagnosticsJSON para distinguir empty, skipped, appended y replaced

La susceptibilidad de búsqueda y los píxeles visibles sin cambios se verifican después de guardar y recargar el documento

Véase también

OCRPageEx, OCRDocumentEx, ConfigureTesseractOCR, GetOCRDiagnosticsJSON, LastOCRError