> ## 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.

# Interface IImageSource

> Interface IImageSource dans l’API ABBYY FineReader Engine — Il s’agit de l’interface d’une source d’images personnalisée.

<Note>
  Cette interface est implémentée dans FRE pour Linux et Windows.
</Note>

Il s’agit de l’interface d’une source d’images personnalisée. Cette interface et toutes ses méthodes sont implémentées côté client. Elle est utilisée par le Batch Processor (l’objet [BatchProcessor](/fr/fine-reader/engine/api-reference/batch-processor/batchprocessor)).

Cette interface vous permet d’implémenter de façon personnalisée une file d’attente de traitement d’images. Le Batch Processor demande l’image suivante dans cette file d’attente à l’aide des méthodes GetNextImageFile ou GetNextImageDocument.

<Warning>
  Tous les objets [ImageDocument](/fr/fine-reader/engine/api-reference/image-related-objects/imagedocument) de la file d’attente doivent rester valides jusqu’à la fin du traitement. Pour garantir un fonctionnement correct, les objets ImageDocument doivent être créés via l’objet [Engine](/fr/fine-reader/engine/api-reference/engine-object-iengine-interface). S’ils sont créés via l’objet [FRDocument](/fr/fine-reader/engine/api-reference/document-related-objects/frdocument), une erreur peut se produire, car l’objet FRDocument peut être détruit lors de l’appel de la méthode GetNextImageDocument.
</Warning>

<div id="methods">
  ## Méthodes
</div>

| Nom                                                                                                                   | Description                                                                                   |
| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| [GetNextImageDocument](/fr/fine-reader/engine/api-reference/batch-processor/iimagesource/getnextimagedocument-method) | Renvoie le document image suivant dans la file d'attente de traitement d'images de la source. |
| [GetNextImageFile](/fr/fine-reader/engine/api-reference/batch-processor/iimagesource/getnextimagefile-method)         | Renvoie le fichier image suivant dans la file d'attente de traitement d'images de la source.  |
| [IsEmpty](/fr/fine-reader/engine/api-reference/batch-processor/iimagesource/isempty-method)                           | Vérifie si la file d'attente de traitement d'images de la source contient des fichiers image. |

<div id="input-parameter">
  ## Paramètre d'entrée
</div>

La méthode [Start](/fr/fine-reader/engine/api-reference/batch-processor/batchprocessor/start-method) de l'objet [BatchProcessor](/fr/fine-reader/engine/api-reference/batch-processor/batchprocessor) reçoit un pointeur vers cette interface en paramètre d'entrée.

<div id="samples">
  ## Exemples
</div>

<Accordion title="Code C#">
  ```csharp theme={null}
  // Exemple d'implémentation d'une source d'images personnalisée qui gère une file d'attente de fichiers image
  public class ImageSourceCallback : FREngine.IImageSource
  {
     public ImageSourceCallback( string imageFilesDirectory )
     {
         imageFiles = ImageSourceHelper.LoadFilesNames( imageFilesDirectory );
         nextFileIndex = 0;
     }
     public bool IsEmpty()
     {
         return nextFileIndex >= imageFiles.Length;
     }
     public FREngine.IFileAdapter GetNextImageFile()
     {
         if( !IsEmpty() ) {
             return new FileAdapterCallback( imageFiles[nextFileIndex++] );
         }
         return null;
     }
     public FREngine.IImageDocument GetNextImageDocument()
     {
         ...
     }
     private string[] imageFiles;
     private int nextFileIndex;
  }
  public class FileAdapterCallback : FREngine.IFileAdapter
  {
      ...
  }
  public class ImageSourceHelper
  {
      ...
  }
  ```
</Accordion>

L'interface est utilisée dans les exemples de code suivants : [BatchProcessing](/fr/fine-reader/engine/guided-tour/samples#batchprocessing) et dans les outils de démonstration Windows : [BatchProcessingRecognition](/fr/fine-reader/engine/guided-tour/samples#batchprocessingrecognition).

<div id="see-also">
  ## Voir aussi
</div>

[BatchProcessor](/fr/fine-reader/engine/api-reference/batch-processor/batchprocessor)
