Keep a side computed for a size with one side 0 at 1 or more (closes #283)
check / check (push) Canceled after 0s
check / check (push) Canceled after 0s
A size with one side 0 has that side worked out from the source's proportions by integer division, and nothing kept it at 1 or more. When it rounded down to 0, libvips was asked for a square: an 8192x1 source at 100x0 came out 100x100, at 1300x0 it asked for one block of about 39 GB, and some shapes answered 500. Each computed side, and each side contain, inside and outside work out again from the scale, is now at least 1. README.md now says what fit=outside does and what a 0 side means; with fit=outside an 8192x1 source at 100x0 comes out 8192x1, as covering the size requires. Model: opus-5-5
This commit was merged in pull request #291.
This commit is contained in:
@@ -536,8 +536,13 @@ Where:
|
||||
- `query` — source query string as under Routes, empty string if none, with `%`
|
||||
and `:` written as in `path`; neither then holds a `:`, so path `/a:b` with no
|
||||
query and path `/a` with query `b:` are signed differently
|
||||
- `width` — requested width in pixels, `0` for original
|
||||
- `height` — requested height in pixels, `0` for original
|
||||
- `width` — requested width in pixels, or `0`: the width is then worked out from
|
||||
the source's proportions and the requested height, rounded down but at least
|
||||
1, or is the source's own width when the height is `0` too (the `orig` size)
|
||||
- `height` — requested height in pixels, or `0`: the height is then worked out
|
||||
from the source's proportions and the requested width, rounded down but at
|
||||
least 1, or is the source's own height when the width is `0` too (the `orig`
|
||||
size)
|
||||
- `format` — output format, one of those listed under Routes, with `original`
|
||||
signed as `orig`, `jpg` as `jpeg`, and no format as `jxl`, so a URL with no
|
||||
format has the signature of the same URL ending in `.jxl`; `auto` is signed as
|
||||
@@ -550,7 +555,10 @@ Where:
|
||||
with 400
|
||||
- `fit` — the URL's `fit` query parameter (cover, contain, fill, inside,
|
||||
outside), or `cover` when the URL has no `fit`; a request whose `fit` is
|
||||
anything else, an empty `fit=` included, is refused with 400
|
||||
anything else, an empty `fit=` included, is refused with 400. `outside` scales
|
||||
the image to cover the requested size, keeping its proportions, so it can come
|
||||
out larger than that size on one side: an 8192x1 source at `100x0`, which is
|
||||
100x1 by its proportions, comes out at 8192x1
|
||||
|
||||
The URL's `sig` is the HMAC-SHA256 result in base64url (the URL-safe alphabet of
|
||||
RFC 4648) with the trailing `=` padding kept, 44 characters in all. pixa
|
||||
|
||||
Reference in New Issue
Block a user