# `Image.Options.WarpPerspective`
[🔗](https://github.com/elixir-image/image/blob/v0.65.0/lib/image/options/warp_perspective.ex#L1)

Options and option validation for `Image.warp_perspective/4`.

# `extend_mode`

```elixir
@type extend_mode() :: [:black | :white | :copy | :repeat | :mirror | :background]
```

When extending the canvas the generated
pixels are determined by this option.

# `t`

```elixir
@type t() :: [warp_perspective_option()]
```

Options for Image.warp_perspective/4.

# `warp_perspective_option`

```elixir
@type warp_perspective_option() :: [
  background: Image.Pixel.t() | :average,
  extend_mode: extend_mode()
]
```

Options applicable to `Image.embed/4`.

# `validate_options`

```elixir
@spec validate_options(Vix.Vips.Image.t(), Keyword.t()) ::
  {:ok, Keyword.t()} | {:error, Image.error()}
```

Validate the options for `Image.warp_perspective/4`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
