-
Notifications
You must be signed in to change notification settings - Fork 306
Open
unjs/ipx
#281Description
Reproduction
https://github.com/Tofandel/nuxt-img-bug
<NuxtImg src="caligaris.svg" background="white" width="173" height="173" fit="contain" format="webp"></NuxtImg>With the svg being
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 211.21 40"><g fill="#ef3340"><path d="m11.06 31.31c-6.08 0-11.06-4.68-11.06-11.1s5.16-11.19 11.28-11.19c4.98 0 9.22 3.1 10.45 8.22h-5.95c-.92-1.79-2.54-2.93-4.63-2.93-3.06 0-5.51 2.45-5.51 5.86s2.45 5.86 5.51 5.86c1.97 0 3.5-1.01 4.46-2.62h5.99c-1.4 5.2-5.9 7.91-10.54 7.91"/><path d="m39.81 20.16c0-3.63-1.97-5.77-4.81-5.77-2.67 0-5.33 1.92-5.33 5.77s2.67 5.77 5.33 5.77c2.84 0 4.81-2.14 4.81-5.77m5.46-10.93v21.86h-4.28l-.61-2.1h-.66c-1.36 1.49-3.19 2.32-5.55 2.32-5.55 0-10.19-4.55-10.19-11.15s4.63-11.15 10.19-11.15c2.27 0 4.24.79 5.64 2.36v-2.14z"/><path d="m49.93 0h5.68v31.04h-5.68z"/><path d="m60.07 0h5.68v31.04h-5.68z"/><path d="m70.31 9.18h5.6v21.86h-5.6z"/><path d="m95.12 20.11c0-3.63-1.97-5.77-4.81-5.77-2.67 0-5.33 1.92-5.33 5.77s2.67 5.77 5.33 5.77c2.84 0 4.81-2.14 4.81-5.77m5.46-10.93v19.67c0 5.9-3.02 11.15-10.49 11.15-6.99 0-10.8-4.59-10.8-8.04h5.46s.83 2.84 5.16 2.84c3.67 0 5.2-2.01 5.2-5.07v-.83c-1.4 1.57-3.37 2.36-5.64 2.36-5.55 0-10.19-4.55-10.19-11.15s4.63-11.15 10.19-11.15c2.36 0 4.2.83 5.55 2.32h.66l.61-2.1h4.28z"/><path d="m119.55 20.11c0-3.63-1.97-5.77-4.81-5.77-2.67 0-5.33 1.92-5.33 5.77s2.67 5.77 5.33 5.77c2.84 0 4.81-2.14 4.81-5.77m5.46-10.93v21.86h-4.28l-.61-2.1h-.66c-1.35 1.49-3.19 2.32-5.55 2.32-5.55 0-10.19-4.55-10.19-11.15s4.63-11.15 10.19-11.15c2.27 0 4.24.79 5.64 2.36v-2.14z"/><path d="m142.78 8.96v5.6c-.44-.09-1.18-.18-1.92-.18-3.06 0-6.25 1.57-6.25 5.6v11.06h-5.81v-21.86h4.46l.79 2.4h.7c.96-.96 3.1-2.62 6.69-2.62h1.35z"/><path d="m145.95 9.18h5.6v21.86h-5.6z"/><path d="m163.03 13.6c-1.84 0-2.62.92-2.62 1.84 0 1.49 1.97 1.92 3.28 2.19 3.89.83 7.83 2.01 7.83 6.64s-3.72 6.99-8.22 6.99c-5.03 0-8.92-3.06-9.18-7.69h5.38c.13 1.31 1.01 3.02 3.67 3.02 2.23 0 2.75-1.18 2.75-2.1 0-1.62-1.53-2.1-3.02-2.45-2.58-.57-8.13-1.62-8.13-6.6 0-4.28 4.11-6.47 8.35-6.47 4.9 0 8.13 2.97 8.39 6.64h-5.38c-.17-.74-.87-2.01-3.1-2.01"/><path d="m144.99 3.77c0-2.1 1.7-3.72 3.76-3.72s3.67 1.62 3.67 3.72c0 1.97-1.66 3.67-3.67 3.67s-3.76-1.7-3.76-3.67"/><path d="m69.35 3.77c0-2.1 1.7-3.72 3.76-3.72s3.67 1.62 3.67 3.72c0 1.97-1.66 3.67-3.67 3.67s-3.76-1.7-3.76-3.67"/><path d="m195.7 4.53c-8.55 0-15.49 6.97-15.49 15.58 0 7.04 4.65 13 11.04 14.93l1.25-1.86s-1.25-3.56-1.89-6.88c-.35-1.77-1.09-7.37 3.94-13.53 0 0 .1-1.89-2.43-1.96h-3.74s-.09-.13-.09-.13 4.53-1.6 4.75-1.79c1.76-1.52 4.22-2.91 8.66-.64 0 0-2.58-.48-2.49 1.77 0 .08-.08 2.66-.08 2.66s-.17.79.89 4.36c.33 1.12.47 2.29.39 3.46-.05.79-.17 1.78-.41 2.99-.47 2.44-1.62 5.78-3.71 10.25h-.04c-1.78-4.28-2.44-7-2.42-10.3 0-2.64.59-4.87 1.73-6.62l-1-.32c-1.19 1.82-1.79 4.13-1.8 6.86-.02 3.06.5 5.45 2 9.34l-1.63 2.77c.84.14 1.71.22 2.58.22 8.57 0 15.51-6.98 15.51-15.58s-6.94-15.58-15.51-15.58"/><circle cx="195.64" cy="9.2" r=".69"/></g></svg>The important part is viewBox="0 0 211.21 40"
I would expect the resulting webp to be 173 x 33 (with white background in contain to become 173x173) but it is instead 40x40 (40 being the size from the viewbox so it seems to be some kind of upscaling protection, but that is broken in this case and upscaling protection should not apply to svg)
My suspicion was correct because with :modifiers="{enlarge: true}" the issue is not present
I tracked the issue down to clampDimensionsPreservingAspectRatio in ipx, which doesn't use the fit context, but it should (it's not just a svg specific problem)
Metadata
Metadata
Assignees
Labels
No labels