Pular para o conteúdo principal
Este método é implementado no FRE para Linux e Windows.
Este método é implementado no lado do cliente. O método retorna o próximo arquivo de imagem da fila de processamento de imagens da fonte.
Para Windows, se você trabalhar com imagens já carregadas na memória (por exemplo, usando os métodos OpenBitmap ou OpenDib do objeto Engine), implemente GetNextImageDocument.
Uma implementação do método GetNextImageFile pode incluir um tempo de espera pelo próximo arquivo de imagem. No entanto, não recomendamos implementar tempos de espera longos, pois o FineReader Engine não é multithread. Durante a espera pelo próximo arquivo, o Engine não poderá processar mensagens dos processos de reconhecimento nem receber notificações de que determinadas páginas foram processadas. Se você realmente precisar especificar um tempo de espera longo, o método GetNextImageFile poderá retornar 0. Nesse caso, o Engine continuará processando mensagens dos processos de reconhecimento e fornecendo imagens reconhecidas e, após algum tempo, verificará se a fila de imagens está vazia. Se a fila não estiver vazia (isto é, se IImageSource::IsEmpty retornar FALSE), o Engine chamará o método GetNextImageFile novamente. No entanto, se o método GetNextImageFile retornar 0 e não houver mais páginas para processar, o FineReader Engine devolverá o controle ao usuário: o método IBatchProcessor::GetNextProcessedPage retornará 0.

Sintaxe

C++

HRESULT GetNextImageFile( IFileAdapter** Result );

C#

IFileAdapter GetNextImageFile();

Visual Basic .NET

Function GetNextImageFile() As IFileAdapter

Parâmetros

Result [out, retval] Um ponteiro para uma variável de ponteiro IFileAdapter* que fornece acesso ao próximo arquivo de imagem na fila.

Valores de retorno

[Somente em C++] Se este método retornar um valor diferente de S_OK, isso indica que ocorreu um erro no lado do cliente.

Observações

  • A implementação cliente deste método deve garantir que todas as exceções lançadas dentro do método sejam capturadas e tratadas, e que nenhuma exceção seja propagada para fora dele. A propagação de uma exceção para fora do método pode levar a resultados imprevisíveis (como o encerramento do programa).
  • Se sua licença incluir o módulo Abertura de formatos do Office, você também poderá usar este método para abrir documentos digitais em formatos compatíveis.

Exemplos

// Implementação de exemplo de uma fonte de imagens personalizada que mantém uma fila de arquivos de imagem
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
{
    ...
}

Veja também

IImageSource GetNextImageDocument IsEmpty IFileAdapter