# `Astral.Image.Source`
[🔗](https://github.com/elixir-volt/astral/blob/v0.7.0/lib/astral/image/source.ex#L1)

A local image source resolved from content metadata.

Collection schemas use this struct for `field :cover, :image`. It carries the
user-facing source string plus the resolved file path and metadata needed by
image components.

# `t`

```elixir
@type t() :: %Astral.Image.Source{
  format: Astral.Image.Format.t(),
  height: pos_integer(),
  path: String.t(),
  src: String.t(),
  width: pos_integer()
}
```

# `resolve`

```elixir
@spec resolve(
  String.t(),
  keyword()
) :: {:ok, t()} | {:error, term()}
```

Resolve a local image source against a base file or directory.

---

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