Dieses Objekt bietet Zugriff auf das Handle einer Ressource im Speicher. Es wird von einigen Methoden zurückgegeben, die Zugriff auf eine Bitmap oder einen Speicherblock ermöglichen. Das Objekt verwaltet die Speicherbelegung und hilft Ihnen, Speicherlecks bei der Arbeit mit diesen Ressourcen zu vermeiden.
Diese Schnittstelle unterstützt keine Automatisierung. Das bedeutet, dass sie unter Linux und Windows nicht funktioniert, wenn FineReader Engine als Out-of-Process-Server geladen wird.
Das Objekt wird in den folgenden Situationen verwendet:
Wenn Sie mit der Ressource außerhalb von FineReader Engine arbeiten möchten
Sie können das Handle der Ressource über die Eigenschaft Handle abrufen und damit arbeiten. In diesem Fall wird die Ressource ebenfalls freigegeben, wenn Sie das Handle-Objekt freigeben. Oder Sie können das Handle abrufen und das Handle-Objekt davon trennen (verwenden Sie dazu die Methode Detach). In diesem Fall sind Sie selbst für die Freigabe der Ressource verantwortlich.
Wenn Sie die Ressource an andere Methoden von FineReader Engine übergeben möchten
Sie können das Handle der Ressource über die Eigenschaft HandleAsInt64 als __int64 abrufen. Später können Sie den Wert dieser Eigenschaft an eine Methode von FineReader Engine übergeben, die ihn benötigt. Wenn Sie das Handle-Objekt freigeben, wird die Ressource ebenfalls freigegeben. Sie können die Ressource auch manuell freigeben, indem Sie die Methode CloseHandle aufrufen.
Gibt das Handle der Ressource als __int64 zurück. Sie können den Rückgabewert dieser Eigenschaft als Eingabeparameter an eine Methode der FineReader Engine übergeben.
FREngine.IEngine engine;FREngine.IFRDocument frdoc;// Es wird davon ausgegangen, dass das Dokument erstellt wurde und ihm Bilder hinzugefügt wurden// Bitmap-Handle einer Farbabbildung einer Dokumentseite abrufenFREngine.IFRPage page = frDoc.Pages[0];FREngine.IImageDocument imageDoc = page.ImageDocument;FREngine.IImage image = imageDoc.ColorImage;FREngine.IHandle hBitmap = image.GetBitmap( null );// Mit der Bitmap arbeitenSystem.Drawing.IImage preprocessedImage = System.Drawing.Image.FromHbitmap( hBitmap.Handle );...Gdi32.DeleteObject( hBitmap );