Pular para o conteúdo principal
Este objeto fornece acesso ao handle de um recurso na memória. Ele é retornado por alguns métodos que fornecem acesso a uma imagem bitmap ou a um bloco de memória. O objeto gerencia a alocação de memória e permite evitar vazamentos de memória ao trabalhar com esses recursos.
Esta interface não oferece suporte à automação. Isso significa que ela não funciona no Linux nem no Windows se o FineReader Engine for carregado como um servidor out-of-process.
O objeto é usado nas seguintes situações:
  • Se você pretende trabalhar com o recurso fora do FineReader Engine
Você pode obter o handle do recurso por meio da propriedade Handle e trabalhar com ele. Nesse caso, se liberar o objeto Handle, o recurso também será liberado. Ou você pode obter o handle e desassociar dele o objeto Handle (use o método Detach). Nesse caso, você será responsável por liberar o recurso.
  • Se você pretende passar o recurso para outros métodos do FineReader Engine
Você pode obter o handle do recurso como __int64 por meio da propriedade HandleAsInt64. Depois, pode passar o valor dessa propriedade para um método do FineReader Engine que o exija. Se liberar o objeto Handle, o recurso também será liberado. Você pode liberar o recurso manualmente chamando o método CloseHandle.

Properties

NameTypeDescription
ApplicationEngine, somente leituraRetorna o objeto Engine.
HandleHANDLE*, somente leituraRetorna o handle do recurso. Você pode obter o handle por meio desta propriedade e usá-lo para trabalhar com o recurso.
HandleAsInt64__int64, somente leituraRetorna o handle do recurso como __int64. Você pode passar o valor de retorno desta propriedade para um método do FineReader Engine como um parâmetro de entrada.

Métodos

NomeDescrição
CloseHandleLibera o recurso.
DetachRetorna o handle e desassocia o objeto dele.

Parâmetro de saída

Este objeto é o parâmetro de saída dos seguintes métodos:

Exemplos

FREngine.IEngine engine;
FREngine.IFRDocument frdoc;
// Presumimos que o documento já foi criado e que imagens foram adicionadas a ele
// Obter o handle do bitmap do plano de cor da imagem de uma página do documento
FREngine.IFRPage page = frDoc.Pages[0];
FREngine.IImageDocument imageDoc = page.ImageDocument;
FREngine.IImage image = imageDoc.ColorImage;
FREngine.IHandle hBitmap = image.GetBitmap( null );
// Trabalhar com o bitmap
System.Drawing.IImage preprocessedImage = System.Drawing.Image.FromHbitmap( hBitmap.Handle );
...
Gdi32.DeleteObject( hBitmap );
Esse objeto é usado nos seguintes Demo Tools do Windows: Perfis de processamento predefinidos do Engine.

Veja também

Como trabalhar com Properties