Image crop and focal point in Media Manager / image inputs #523
pixelastronauts
started this conversation in
Ideas
Replies: 0 comments 2 replies
|
Nice @pixelastronauts! We love that idea. Taking a look on how we can implement it. |
0 replies
|
Love how quickly you react to these — thanks @hta218 🙏 |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Summary
Add crop and focal point controls to Weaverse image inputs / Media Manager, so merchants can frame an image in Studio instead of only picking the full file.
Problem
The
imageinput today stores:There is no crop, no freeform focal point, and no way to set focus per usage of the same file.
Workarounds are limited:
positioninput — 9-point grid (top left…bottom right). Coarse, and not tied to the image itselfImagecrop—center | top | bottom | left | rightCDN crop. Same limitationWeaverseImage, and it’s one focal point per file, not per sectionOn heroes, cards, and banners we often need to keep a face / product / logo in frame when
object-fit: covercrops the image. Editors currently have to pre-crop in another tool or live with the 9-point grid.Proposal
Focal point (highest value)
Let the merchant click a point on the selected image in Studio. Store it per input / per usage, not globally on the Shopify file.
Themes apply it as
object-position(and optionally Shopify CDN crop) soobject-fit: coverkeeps that area visible.A 9-point
positionfallback is fine; a clickable point is what we actually need.Crop (nice to have)
Optional crop rect on the same image object (
x,y,width,heightas % or px), so Studio can produce a framed asset without leaving Weaverse. Focal point alone would already cover most banner/card cases.Why this belongs in Studio
image; this is an extension of that picker, similar to editing alt text todayRelated: #522 (Media Manager filters) — same surface, different problem.
Happy to test a Studio build if you add focal point to
WeaverseImage.All reactions