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

# IEditablePictureObject

> IEditablePictureObject in ABBYY FlexiCapture-Skripten: Seitenbilder mit Methoden zum Zuschneiden, Begradigen, Entfernen von Bildrauschen, Binärisieren, Anwenden eines Kontrastfilters und Entfernen von Stempeln bearbeiten.

<div id="what-it-does">
  ## Funktion
</div>

Stellt ein Bild dar, das in ABBYY FlexiCapture bearbeitet werden kann. Das Objekt ist eine Erweiterung der [IPictureObject](/de/flexi-capture/appendix/scripts/ipictureobject)-Schnittstelle.

<Note>
  Dieses Objekt ist in der Web-Verifizierungsstation für die lokale Regelprüfung nicht verfügbar.
</Note>

<div id="methods">
  ## Methoden
</div>

| Methode                                                                                        | Beschreibung                                                                                                                                                                                                                                                                  | Zulässige Bildfarben           |
| ---------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ |
| `ApplyContourSmoother( params: IContourSmootherParams )`                                       | Wendet die Konturglättung auf ein Bild an.                                                                                                                                                                                                                                    | Für Graustufen- und Farbbilder |
| `ApplyLocalContrastFilter( params: ILocalContrastParams )`                                     | Wendet den nicht-adaptiven Kontrastfilter auf ein Bild an.                                                                                                                                                                                                                    | Für Graustufen- und Farbbilder |
| `ApplyMultiscaleLocalContrastFilter()`                                                         | Wendet den adaptiven Kontrastfilter auf ein Bild an. Verwenden Sie diese Methode, um ein Bild in einen Scan umzuwandeln.                                                                                                                                                      | Für Graustufen- und Farbbilder |
| `ApplyShadowsHighlightsFilter( params: IShadowsHighlightsParams )`                             | Wendet die Schattenaufhellung auf ein Bild an.                                                                                                                                                                                                                                | Für Graustufen- und Farbbilder |
| `ApplySigmaFilter()`                                                                           | Entfernt Bildrauschen.                                                                                                                                                                                                                                                        | Für alle Bilder                |
| `AutoCrop( [optional] type: string )`                                                          | Schneidet ein Bild automatisch zu. Mögliche Werte für den Parameter `type` sind `Photo`, `Scan` und `Generic`. Der Standardwert ist `Generic`.                                                                                                                                | Für alle Bilder                |
| `Binarize( params: IBinarizationParams )`                                                      | Konvertiert die Farben eines Bildes in Schwarz-Weiß. Verfügt über andere Eigenschaften als die Methode `ConvertToBW`.                                                                                                                                                         | Für Graustufen- und Farbbilder |
| `ConvertToBW( [optional] threshold: int )`                                                     | Konvertiert ein Bild in Schwarz-Weiß. Sie können einen Helligkeitsschwellenwert angeben. Werte oberhalb des Schwellenwerts werden als weiß betrachtet, Werte unterhalb des Schwellenwerts als schwarz. Der Helligkeitsschwellenwert kann im Bereich von `0` bis `255` liegen. | Für alle Bilder                |
| `CreateBinarizationParams(): IBinarizationParams`                                              | Erstellt ein Objekt mit Parametern für die Methode `Binarize`.                                                                                                                                                                                                                | Für alle Bilder                |
| `CreateContourSmootherParams(): IContourSmootherParams`                                        | Erstellt ein Objekt mit Parametern für den Konturglätter.                                                                                                                                                                                                                     | Für alle Bilder                |
| `CreateLocalContrastFilterParams(): ILocalContrastParams`                                      | Erstellt ein Objekt mit Parametern für die Kontrastanpassung. Die Parameter des Filters sind auf Standardwerte gesetzt.                                                                                                                                                       | Für alle Bilder                |
| `CreateShadowsHighlightsFilterParams(): IShadowsHighlightsParams`                              | Erstellt ein Objekt mit Parametern für die Aktion zum Ändern eines Schattenaufhellungseffekts.                                                                                                                                                                                | Für alle Bilder                |
| `Crop( rect: string )`                                                                         | Schneidet das Bild auf das angegebene Rechteck zu.                                                                                                                                                                                                                            | Für alle Bilder                |
| `CutOut( rect: string ): IEditablePictureObject`                                               | Schneidet ein angegebenes Rechteck aus dem Bild aus und gibt dieses Rechteck zurück.                                                                                                                                                                                          | Für alle Bilder                |
| `Deskew( [optional] byLines: bool, [optional] byBlackSquares: bool, [optional] byText: bool )` | Begradigt die Schieflage des Bildes. Die Schieflage des Bildes kann anhand gerader Linien, schwarzer Quadrate oder Text korrigiert werden. Standardmäßig ist der Parameter `byText` auf `true` gesetzt.                                                                       | Für alle Bilder                |
| `Despeckle( [optional] garbageSize: int )`                                                     | Entfernt Bildstörungen aus Schwarz-Weiß-Bildern. Bildstörungen bis zur angegebenen Größe werden entfernt. Wenn der Parameter `garbageSize` nicht angegeben ist, wird die Größe automatisch ermittelt.                                                                         | Nur für Schwarz-Weiß-Bilder    |
| `Erase( rectangle: string, [optional] red: int, [optional] green: int, [optional] blue: int )` | Löscht einen Bereich im Bild. Sie können die Farbe angeben, mit der der Bereich gelöscht wird. Standardmäßig wird Schwarz verwendet.                                                                                                                                          | Für alle Bilder                |
| `FlipHorizontal()`                                                                             | Spiegelt das Bild horizontal.                                                                                                                                                                                                                                                 | Für alle Bilder                |
| `FlipVertical()`                                                                               | Spiegelt das Bild vertikal.                                                                                                                                                                                                                                                   | Für alle Bilder                |
| `FreeScale( newWidth: int, newHeight: int, newResolution: int )`                               | Ändert die Größe der Seite entsprechend den neuen Werten.                                                                                                                                                                                                                     | Für alle Bilder                |
| `Invert( [optional] rectString: string )`                                                      | Invertiert das Bild. Sie können einen string mit den Koordinaten des zu invertierenden Rechtecks angeben.                                                                                                                                                                     | Für alle Bilder                |
| `NewRectsArray(): IRects`                                                                      | Erstellt eine neue Sammlung von Rechtecken. Gibt ein [IRects](/de/flexi-capture/appendix/scripts/irects)-Objekt zurück.                                                                                                                                                       | Nur für Farbbilder             |
| `RemoveMotionBlur()`                                                                           | Entfernt Unschärfen, die durch Bewegungen des Dokuments, der Kamera oder des Scanners während des Scannens verursacht werden.                                                                                                                                                 | Für alle Bilder                |
| `RemoveStamps( color: TColorToFilter, rects: IRects )`                                         | Löscht farbige Stempel und andere Markierungen in einer angegebenen Farbe aus einem Bild. Weitere Informationen finden Sie unter [Farbige Stempel aus einem Bild entfernen](#remove-color-stamps-from-an-image).                                                              | Nur für Farbbilder             |
| `RemoveStampsExt( colorsToFilter: string )`                                                    | Entfernt farbige Stempel und andere Markierungen mit einem verbesserten Algorithmus aus einem Bild, der mehr Farben entfernt. Dies ist die empfohlene Methode. Weitere Informationen finden Sie unter [Zusätzliche Stempelfarben entfernen](#remove-additional-stamp-colors). | Nur für Farbbilder             |
| `Rotate( angle: int )`                                                                         | Dreht das Bild im Uhrzeigersinn auf den angegebenen Winkel.                                                                                                                                                                                                                   | Für alle Bilder                |
| `Scale( ratio: int )`                                                                          | Streckt oder komprimiert das Bild ausgehend von der Ausgangsgröße von 100 %. Die Methode wirkt sich nur auf die Pixelgröße des Bildes aus. Die physische Bildgröße bleibt unverändert.                                                                                        | Für alle Bilder                |

<Note>
  Der an die `CutOut`- und `Crop`-Methoden übergebene Parameter `rect` ist ein String der Form `"[left, top, right, bottom]"`. Um diesen String zu erhalten, rufen Sie die Methode `ToString` eines beliebigen [IRect](/de/flexi-capture/appendix/scripts/irect)-Objekts auf oder verwenden die Methode `Rect` von [IFlexiCaptureTools](/de/flexi-capture/appendix/scripts/iexportimagetools) (`FCTools`).
</Note>

<div id="remove-color-stamps-from-an-image">
  ## Farbige Stempel aus einem Bild entfernen
</div>

Die Methode `RemoveStamps` löscht farbige Stempel und andere Markierungen einer angegebenen Farbe aus einem Bild. Diese Methode funktioniert nur bei Farbbildern.

| Parameter | Typ                                                   | Beschreibung                                        |
| --------- | ----------------------------------------------------- | --------------------------------------------------- |
| `color`   | [TColorToFilter](/de/flexi-capture/t-color-to-filter) | Die Farbe der zu entfernenden Stempel.              |
| `rects`   | [IRects](/de/flexi-capture/appendix/scripts/irects)   | Die Rectangle-Sammlung der zu entfernenden Stempel. |

Das folgende Beispielskript für das Ereignis [On User Command](/de/flexi-capture/appendix/scripts-shell/user-command) entfernt rote Stempel von allen Seiten. Der gesamte Seitenbereich wird nach Stempeln durchsucht.

```csharp theme={null}
MainWindow.TaskWindow.OpenDocument( MainWindow.TaskWindow.EditorWindow.Document );
foreach (IPage page in MainWindow.TaskWindow.EditorWindow.Document.Pages)
{
    if (page.Picture.IsColor)
    {
        IEditablePictureObject editablePicture = page.Picture.CreateEditableCopy();
        IRects rects = editablePicture.NewRectsArray();
        rects.AddRect(0, 0, editablePicture.Width - 1, editablePicture.Height - 1); // gesamte Seite
        editablePicture.RemoveStamps(TColorToFilter.CTF_Red, rects);
        page.ReplaceImage(editablePicture);
    }
}
```

<div id="remove-additional-stamp-colors">
  ## Zusätzliche Stempelfarben entfernen
</div>

Die Methode `RemoveStampsExt` entfernt farbige Stempel und andere Markierungen einer angegebenen Farbe aus einem Bild. Sie ähnelt `RemoveStamps`, verwendet jedoch einen verbesserten Algorithmus, der mehr Farben entfernt. Dies ist die empfohlene Methode zum Entfernen von Stempeln.

Der Parameter `colorsToFilter` (`string`) legt die Farbe der zu entfernenden Stempel fest:

* Akzeptiert die folgenden `string`-Werte: `Red`, `Green`, `Blue`, `Yellow`, `Orange`, `LightBlue` und `Purple` (Groß- und Kleinschreibung wird nicht berücksichtigt).
* Sie können mehrere, durch Kommas getrennte Werte angeben, zum Beispiel `"Red, Green"`.
* Sie können eine leere Zeichenfolge (`""`) angeben, damit das Programm automatisch die passende Stempelfarbe auswählt. Das Programm entfernt alle Stempel, die es in einem Bild erkennt und die einen der zulässigen Farbwerte haben.

Das folgende Beispielskript für das Ereignis [On User Command](/de/flexi-capture/appendix/scripts-shell/user-command) entfernt rote und grüne Stempel von allen Seiten:

```csharp theme={null}
foreach (IPage page in Document.Pages)
{
    if (page.Picture.IsColor)
    {
        IPictureObject picture = page.Picture;
        IEditablePictureObject editablePicture = picture.CreateEditableCopy();
        editablePicture.RemoveStampsExt("Red, Green");
        page.ReplaceImage(editablePicture);
    }
}
```

<div id="custom-processing-stage-examples">
  ## Beispiele für benutzerdefinierte Verarbeitungsstufen
</div>

Diese Skripte zeigen, wie Methoden des Objekts `IEditablePictureObject` in benutzerdefinierten Verarbeitungsstufen verwendet werden.

<div id="apply-a-local-contrast-filter">
  ### Lokalen Kontrastfilter anwenden
</div>

Dieses Skript erstellt ein Objekt mit Parametern für den lokalen Kontrastfilter, legt die Parameter manuell fest und wendet den Filter auf ein Bild an.

```csharp theme={null}
foreach( IPage page in Document.Pages )
{
    IPictureObject picture = page.Picture;
    IEditablePictureObject editablePicture = picture.CreateEditableCopy();
    // Erstellen eines Objekts mit Parametern (Parameter sind standardmäßig gesetzt)
    ILocalContrastParams localContrastParams = editablePicture.CreateLocalContrastFilterParams();
    // Festlegen der Parameter, deren Werte anschließend geändert werden
    localContrastParams.Radius = 7;
    localContrastParams.NoiseLevel = 200;
    // Anwenden eines Filters auf das Bild
    editablePicture.ApplyLocalContrastFilter( localContrastParams );
    // Ersetzen des Seitenbilds durch das geänderte Bild
    page.ReplaceImage( editablePicture );
}
```

<div id="binarize-an-image-with-custom-parameters">
  ### Ein Bild mit benutzerdefinierten Parametern binarisieren
</div>

Dieses Skript erstellt ein Objekt mit Parametern für die Methode `Binarize` und wandelt das Bild mit den festgelegten Parametern in Schwarz-Weiß um.

```csharp theme={null}
foreach ( IPage page in Document.Pages )
{
    IPictureObject picture = page.Picture;
    IEditablePictureObject editablePicture = picture.CreateEditableCopy();
    // Erstellen eines Objekts mit Parametern (Parameter sind standardmäßig gesetzt)
    IBinarizationParams binarizationParams =  editablePicture.CreateBinarizationParams();
    // Festlegen des true- oder false-Parameters
    binarizationParams.SmoothTexture = false;
    editablePicture.Binarize( binarizationParams );
    page.ReplaceImage( editablePicture );
}
```

<div id="enhance-selected-pages-from-the-verification-station">
  ### Ausgewählte Seiten in der Verifizierungsstation optimieren
</div>

Dieses Skript erhöht den Kontrast, entfernt Bildrauschen, führt eine automatische Zuschneidung durch und reduziert Unschärfe auf den ausgewählten Seiten. Ein Operator der Verifizierungsstation führt das Skript aus.

```csharp theme={null}
foreach( IPageItem pageItem in MainWindow.Selection.PageItems) {
    pageItem.TaskWindow.CloseEditorWindow();
    pageItem.TaskWindow.OpenDocument(  pageItem.DocumentItem.Document );
    IPage page = pageItem.Page;
    IEditablePictureObject editablePicture = page.Picture.CreateEditableCopy();
    // Wendet die Bildtransformationen an
    editablePicture.AutoCrop();
    editablePicture.ApplySigmaFilter();
    editablePicture.ApplyMultiscaleLocalContrastFilter();
    editablePicture.RemoveMotionBlur();
    // Ersetzt das ursprüngliche Dokumentbild durch das bearbeitete Bild
    page.ReplaceImage( editablePicture );
    pageItem.TaskWindow.CloseDocument(  pageItem.DocumentItem.Document );
}
```
