Méthode GetNextImageFile de l’interface IImageSource
Cette méthode est implémentée dans FRE pour Linux et Windows.
Cette méthode est implémentée côté client. Elle renvoie le fichier image suivant de la file d’attente de traitement d’images de la source.
Sous Windows, si vous travaillez avec des images déjà chargées en mémoire (par exemple, si vous utilisez les méthodes OpenBitmap ou OpenDib de l’objet Engine), implémentez GetNextImageDocument.
Une implémentation de la méthode GetNextImageFile peut inclure un délai d’attente avant l’arrivée du fichier image suivant. Cependant, nous ne recommandons pas d’implémenter des délais d’attente longs, car FineReader Engine n’est pas multithread. Pendant qu’il attend le fichier suivant, l’Engine ne pourra pas traiter les messages des processus de reconnaissance ni recevoir les notifications indiquant que certaines pages ont été traitées. Si vous devez malgré tout spécifier un délai d’attente long, la méthode GetNextImageFile peut renvoyer 0. Dans ce cas, l’Engine continuera à traiter les messages des processus de reconnaissance et à fournir les images reconnues, puis vérifiera au bout d’un moment si la file d’attente d’images est vide. Si la file n’est pas vide (c’est-à-dire si IImageSource::IsEmpty renvoie FALSE), l’Engine appellera de nouveau la méthode GetNextImageFile. En revanche, si la méthode GetNextImageFile renvoie 0 et qu’il n’y a plus de pages à traiter, FineReader Engine rendra le contrôle à l’utilisateur : la méthode IBatchProcessor::GetNextProcessedPage renverra 0.
L’implémentation côté client de cette méthode doit garantir que toutes les exceptions levées à l’intérieur de la méthode sont interceptées et traitées, et qu’aucune exception n’est propagée en dehors de la méthode. La propagation d’une exception en dehors de la méthode peut entraîner des résultats imprévisibles (comme l’arrêt du programme).