# Bild-Element

## 1. Struktur

```ts
interface ImageClip extends BaseClip {
  type: "image";
  src: string | { $ref: string };
}
```

## 2. Unterstützte Felder

### `src`
- Typ: `string | { $ref: string }`
- Erforderlich: ja
- Zweck: Bild-URL oder Referenz auf ein Bild-Asset

## 3. Aktuelles Runtime-Verhalten

- `src` unterstützt direkte URLs
- `src` unterstützt `$ref`
- `transform` funktioniert
- `style.borderRadius` funktioniert
- `style.objectFit` funktioniert
- `style.filters` funktioniert

## 4. `style.objectFit`

Unterstützte Werte:
- `fill`
- `cover`
- `contain`

Bedeutung:
- `fill`: streckt auf den Zielbereich und kann verzerren
- `cover`: behält das Seitenverhältnis bei und kann beschneiden
- `contain`: behält das Seitenverhältnis bei und kann leeren Raum lassen

Beispiel:

```json
{
  "style": {
    "objectFit": "cover"
  }
}
```

Es kann auch mit Filtern kombiniert werden:

```json
{
  "style": {
    "objectFit": "cover",
    "filters": [
      { "type": "blur", "value": 24 }
    ]
  }
}
```

## 5. Beispiel

```json
{
  "type": "image",
  "start": 0.5,
  "duration": 4,
  "src": { "$ref": "logo" },
  "transform": {
    "x": "85%",
    "y": "10%",
    "width": 220,
    "height": 80
  },
  "style": {
    "borderRadius": 16,
    "objectFit": "contain"
  },
  "animations": [
    {
      "type": "fadeIn",
      "duration": 0.5
    }
  ]
}
```