Resize operation. Combines target dimensions, fit mode, gravity (focal point for cropping), upscale policy, and DPR (device pixel ratio).
Either :width, :height, or both may be set. When only one is set,
the other is inferred from the source aspect ratio per the chosen
:fit mode.
:width may also be the atom :auto, mirroring Cloudflare's
client-hint-driven sizing. The interpreter resolves it to a concrete
pixel count from request hints; if no hint is available it falls back
to the source width.
Summary
Types
@type fit() :: :contain | :cover | :crop | :pad | :scale_down | :squeeze
@type t() :: %Image.Plug.Pipeline.Ops.Resize{ dpr: pos_integer(), face_zoom: float(), fit: fit(), gravity: gravity(), height: nil | pos_integer(), size_pct: nil | number(), upscale?: boolean(), width: nil | :auto | pos_integer() }