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

# OnToolAddBlock-Methode der IImageViewerEvents-Schnittstelle

> OnToolAddBlock-Methode der IImageViewerEvents-Schnittstelle in ABBYY FineReader Engine Visual Components unter Windows — Diese Methode wird clientseitig implementiert.

Diese Methode wird clientseitig implementiert. Sie wird von ABBYY FineReader Engine aufgerufen, bevor ein neuer Block hinzugefügt wird, der mit einem der folgenden Werkzeuge im [Image Viewer](/de/fine-reader/engine/visual-components-reference/imageviewer) gezeichnet wurde:

* Erkennungsbereich zeichnen ([MI\_ChooseTool\_DrawRecognitionArea](/de/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands#mi_choosetool_drawrecognitionarea))
* Textbereich zeichnen ([MI\_ChooseTool\_DrawTextBlock](/de/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands#mi_choosetool_drawtextblock))
* Tabellenbereich zeichnen ([MI\_ChooseTool\_DrawTableBlock](/de/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands#mi_choosetool_drawtableblock))
* Bildbereich zeichnen ([MI\_ChooseTool\_DrawPictureBlock](/de/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands#mi_choosetool_drawpictureblock))
* Hintergrundbildbereich zeichnen ([MI\_ChooseTool\_DrawBackgroundPictureBlock](/de/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands#mi_choosetool_drawbackgroundpictureblock))
* Barcode-Bereich zeichnen ([MI\_ChooseTool\_DrawBarcodeBlock](/de/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands#mi_choosetool_drawbarcodeblock))

In der Beschreibung der [Image Viewer Commands](/de/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands) erfahren Sie, wie diese Werkzeuge ausgewählt werden können.

Sie übermittelt dem Client Informationen über den gezeichneten Block: seinen Typ und seine Region. Mithilfe dieser Methode kann der Vorgang abgebrochen werden.

<div id="syntax">
  ## Syntax
</div>

<div id="c">
  ### C++
</div>

```cpp theme={null}
HRESULT OnToolAddBlock(
  BlockTypeEnum type,
  IFRRectangle* BlockRect,
  VARIANT_BOOL* Cancel
);
```

### C\#

```csharp theme={null}
void OnToolAddBlock(
  BlockTypeEnum type,
  IFRRectangle   BlockRect,
  out bool      Cancel
);
```

<div id="visual-basic-net">
  ### Visual Basic .NET
</div>

```vb theme={null}
Sub OnToolAddBlock( _
  type As BlockTypeEnum, _
  BlockRect As IFRRectangle, _
  ByRef Cancel As Boolean _
)
```

<div id="parameters">
  ## Parameter
</div>

type

\[in] Enthält den Typ des Blocks. Siehe die Beschreibung der Konstanten [BlockTypeEnum](/de/fine-reader/engine/api-reference/enumerations/blocktypeenum).

BlockRect

\[in] Enthält die Koordinaten des Blocks. Die Koordinaten sind im Objekt [FRRectangle](/de/fine-reader/engine/api-reference/supplementary-objects-and-methods/frrectangle) angegeben. Sie werden in Pixeln relativ zum Dokumentbild angegeben.

Cancel

\[out] Sie können diese Variable auf TRUE setzen, um anzugeben, dass der Vorgang abgebrochen werden soll. In diesem Fall wird der Block nicht erstellt.

<div id="return-values">
  ## Rückgabewerte
</div>

\[Nur C++] Wenn diese Methode einen anderen Wert als S\_OK zurückgibt, weist dies darauf hin, dass clientseitig ein Fehler aufgetreten ist; in diesem Fall wird der Wert des Parameters Cancel nicht berücksichtigt.

<div id="remarks">
  ## Hinweise
</div>

Die Client-Implementierung dieser Methode muss sicherstellen, dass alle in der Methode ausgelösten Ausnahmen abgefangen und behandelt werden und dass keine Ausnahmen außerhalb der Methode propagiert werden. Die Propagierung einer Ausnahme außerhalb der Methode kann zu unvorhersehbaren Ergebnissen führen (z. B. zur Beendigung des Programms).

<div id="see-also">
  ## Siehe auch
</div>

[IImageViewerEvents](/de/fine-reader/engine/visual-components-reference/iimageviewerevents)
