> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Método InjectTextLayer del objeto Engine

> Método InjectTextLayer del objeto Engine en la API de ABBYY FineReader Engine: este método procesa un archivo PDF de solo imagen o de imagen sobre texto y crea un PDF con capacidad de búsqueda con una capa de texto invisible del texto reconocido.

Este método procesa el archivo PDF de entrada "[solo imagen](/es/fine-reader/engine/api-reference/enumerations/pdfexportmodeenum#imageonly)" o "[imagen sobre texto](/es/fine-reader/engine/api-reference/enumerations/pdfexportmodeenum#imageontext)" y crea un archivo PDF con capacidad de búsqueda que contiene las mismas imágenes de página y la capa de texto invisible generada a partir del texto reconocido del documento.

Tenga en cuenta que, si el archivo de entrada ya contiene una capa de texto, esta se reemplazará. Puede usar el método [IsPdfWithTextualContent](/es/fine-reader/engine/api-reference/engine-object-iengine-interface/processing-methods/ispdfwithtextualcontent-method) del objeto [Engine](/es/fine-reader/engine/api-reference/engine-object-iengine-interface) para comprobar si el archivo de entrada contiene una capa de texto.

Solo se pueden procesar archivos PDF con este método. Para crear PDF con capacidad de búsqueda a partir de otros tipos de imágenes, puede usar métodos del objeto [FRDocument](/es/fine-reader/engine/api-reference/document-related-objects/frdocument) (por ejemplo, [AddImageFile](/es/fine-reader/engine/api-reference/document-related-objects/frdocument/addimagefile-method), [Process](/es/fine-reader/engine/api-reference/document-related-objects/frdocument/process-method) y [Export](/es/fine-reader/engine/api-reference/document-related-objects/frdocument/export-method)).

<Note>
  En Windows, la biblioteca COM debe inicializarse en el subproceso actual antes de llamar a este método.
</Note>

<div id="syntax">
  ## Sintaxis
</div>

<div id="c">
  ### C++
</div>

```cpp theme={null}
HRESULT InjectTextLayer(
  BSTR                       SourcePdfFile,
  BSTR                       TargetPdfFile,
  IImagePasswordCallback*    PasswordCallback,
  IPrepareImageMode*         PrepareMode,
  IDocumentProcessingParams* DocumentProcessingParams,
  IIntsCollection*           PageIndices,
  IProcessingEvents*         ProcessingEvents,
  ITextLayerInjectionParams* TextLayerInjectionParams
);
```

### C\#

```csharp theme={null}
void InjectTextLayer(
  string                    SourcePdfFile,
  string                    TargetPdfFile,
  IImagePasswordCallback    PasswordCallback,
  IPrepareImageMode         PrepareMode,
  IDocumentProcessingParams DocumentProcessingParams,
  IIntsCollection           PageIndices,
  IProcessingEvents         ProcessingEvents,
  ITextLayerInjectionParams TextLayerInjectionParams
);
```

<div id="visual-basic-net">
  ### Visual Basic .NET
</div>

```vb theme={null}
 Sub InjectTextLayer( _
  SourcePdfFile As String, _
  TargetPdfFile As String, _                
  [PasswordCallback As IImagePasswordCallback = Nothing], _
  [PrepareMode As IPrepareImageMode = Nothing], _         
  [DocumentProcessingParams As IDocumentProcessingParams = Nothing], _
  [PageIndices As IIntsCollection = Nothing], _
  [ProcessingEvents As IProcessingEvents = Nothing], _
  [TextLayerInjectionParams As ITextLayerInjectionParams = Nothing] _
)
```

<div id="parameters">
  ## Parámetros
</div>

SourcePdfFile

\[in] Esta variable contiene la ruta completa al archivo PDF de origen. Los archivos en otros formatos no se pueden procesar.

TargetPdfFile

\[in] Esta variable contiene la ruta completa al archivo PDF con capacidad de búsqueda que debe crearse como resultado del procesamiento. Los nombres de los archivos de origen y de destino no pueden ser iguales.

PasswordCallback

\[in] Hace referencia a la interfaz del objeto implementado por el usuario del tipo [IImagePasswordCallback](/es/fine-reader/engine/api-reference/image-related-objects/iimagepasswordcallback), que se utiliza para gestionar posibles solicitudes de contraseña para acceder a archivos PDF. Este parámetro es opcional y puede ser 0; en ese caso, los archivos protegidos con contraseña no se pueden procesar.

PrepareMode

\[in]  Hace referencia al objeto [PrepareImageMode](/es/fine-reader/engine/api-reference/image-related-objects/prepareimagemode), que define el modo de conversión del archivo de imagen al formato interno de ABBYY FineReader Engine. Este parámetro puede ser 0; en ese caso, se usan los parámetros predeterminados del modo de preparación de imagen o, si se ha cargado un [profile](/es/fine-reader/engine/guided-tour/advanced-techniques/working-with-profiles), se usan los parámetros establecidos por ese perfil.

Tenga en cuenta que, de los parámetros correspondientes a la corrección geométrica, solo se tienen en cuenta los correspondientes a la corrección de inclinación, el espejado y la rotación. No se realizan la división de páginas ni la corrección geométrica no lineal.

DocumentProcessingParams

\[in] Hace referencia al objeto [DocumentProcessingParams](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/documentprocessingparams), que almacena todos los parámetros de procesamiento. Este parámetro puede ser 0. En este caso, el documento se procesa con los parámetros predeterminados (todos los parámetros de procesamiento se establecen en sus valores predeterminados) o, si se ha cargado un [profile](/es/fine-reader/engine/guided-tour/advanced-techniques/working-with-profiles), se usan los parámetros establecidos por ese perfil.

Tenga en cuenta que, de los parámetros correspondientes a la corrección geométrica, solo se tienen en cuenta los correspondientes a la corrección de inclinación de la imagen, el espejado y la rotación. No se realizan la división de páginas ni la corrección geométrica no lineal.

PageIndices

\[in] Este parámetro hace referencia al objeto [IntsCollection](/es/fine-reader/engine/api-reference/supplementary-objects-and-methods/intscollection), que especifica los índices de las páginas del documento en las que se inyectará el texto. Este parámetro es opcional y puede ser 0; en ese caso, el texto se inyectará en todas las páginas del documento.

ProcessingEvents

\[in] Hace referencia a la interfaz [IProcessingEvents](/es/fine-reader/engine/api-reference/supplementary-objects-and-methods/iprocessingevents) del objeto implementado por el usuario, que se utiliza para gestionar el procesamiento. Este parámetro puede ser 0; en ese caso, no se adjuntará ningún callback.

TextLayerInjectionParams

\[in] Esta variable hace referencia al objeto [TextLayerInjectionParams](/es/fine-reader/engine/api-reference/parameter-objects/export-parameters/textlayerinjectionparams), que almacena los parámetros del procesamiento del documento durante la inyección de texto. Este parámetro puede ser 0. En este caso, se utilizan los valores predeterminados de las propiedades del objeto.

<div id="return-values">
  ## Valores de retorno
</div>

Este método no tiene valores de retorno específicos. Devuelve los [valores de retorno estándar de las funciones de ABBYY FineReader Engine](/es/fine-reader/engine/api-reference/return-codes).

<div id="remarks">
  ## Observaciones
</div>

Se tienen en cuenta los parámetros de procesamiento correspondientes a la corrección de la inclinación, el espejado y la rotación de la imagen. No se realizan la división de páginas ni la corrección geométrica no lineal.

En Linux y Windows: Según el valor de la propiedad [IEngine::MultiProcessingParams](/es/fine-reader/engine/api-reference/parameter-objects/multiprocessingparams), ABBYY FineReader Engine puede distribuir el procesamiento de documentos multipágina entre los núcleos de la CPU.

<div id="see-also">
  ## Consulte también
</div>

[Engine](/es/fine-reader/engine/api-reference/engine-object-iengine-interface)

[IImagePasswordCallback](/es/fine-reader/engine/api-reference/image-related-objects/iimagepasswordcallback)
