ApplyOCRTextLayer

OCR, texto, edición de documentos

Descripción

Valida JSON de OCR independiente del proveedor y agrega a una página texto ajustado en modo de renderizado 3

El texto agregado se puede buscar y seleccionar, pero es invisible cuando se representa la página

Sintaxis

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

Parámetros

PageLa página de destino con base 1
ResultJSONUn objeto de resultado OCR versionado
FontNameUn nombre o ruta de fuente TrueType incrustable, o una cadena vacía para seleccionar una alternativa instalada
MinConfidenceEl umbral de confianza inclusivo de 0 a 1

Esquema JSON

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

left y top usan un origen en la esquina superior izquierda en unidades de origen

Cuando están presentes width y height, los cuadros de palabras se escalan desde esas dimensiones de origen hasta la página PDF; cuando se omiten ambos, las coordenadas se interpretan como puntos PDF

Cada palabra requiere text, left, top, width y height; confidence es opcional y su valor predeterminado es 1

La geometría debe ser finita y no negativa, con ancho y alto positivos, mientras que la confianza debe estar entre 0 y 1

Valores devueltos

1Se agregó la capa de texto o ninguna palabra alcanzó el umbral
0Falló la validación o la escritura

Observaciones

La estructura JSON completa y cada límite de palabra se validan antes de escribir el contenido de la página

Cada palabra se dimensiona según la altura de su cuadro y se ajusta horizontalmente mediante escalado de texto, mientras que un estado gráfico aislado evita que el formato de OCR se filtre a operaciones de dibujo posteriores

LastErrorCode es 110 para JSON de OCR no válido y 307 para un error de escritura de página, fuente o capa de texto

LastOCRError proporciona el motivo detallado

Véase también

OCRPage, OCRDocument, LastOCRError, RenderPageToString