Low image quality when downscaling
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Rust
- Sterne
- 4.1k
- Forks
- 348
- Ø Merge
- 1 T. 14 Std.
- Gemergte PRs (30 T.)
- 3
Beschreibung
The use case is a PNG image which is base64-encoded and embedded in the SVG in an `` tag. In the attached example, the original image is 160x160, and scaled down to 49x49 in the SVG markup.

The rendered image (resvg-rendered-49px.png) quality is degraded, especially on the curves.

When defining the dimensions as 160x160 in the SVG markup, the rendered image (resvg-rendered-160px.png) quality is great. And when including that image on an HTML page and re-scaling in the HTML markup, `
`, the image quality remains crisp.

We also tried setting the `image-rendering` attribute for `OptimizeQuality`, but the improvement was negligible.
https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/image-rendering
Is is correct that Bicubic interpolation is being used? Do you have any guidance for improving image quality, and/or are there plans for other interpolation options?
Processing this same image with various interpolation filters in `ImageSharp` (e.g. Lanczos, MitchellNetravali, etc.) does produce a high quality result.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, den beigefügten Fall zu reproduzieren: ein 160x160 großes base64 PNG, das in ein SVG-Bild eingebettet und mit 49x49 gerendert wird, und vergleiche es anschließend mit dem in HTML skalierten 160x160-Rendern. Prüfe die Auswirkung von image-rendering="OptimizeQuality" und das Interpolationsverhalten. Als abgeschlossen gilt die Aufgabe, wenn das herunterskalierte SVG-Bild eine sichtbar verbesserte Kurvenqualität aufweist oder die Einschränkungen der unterstützten Interpolation dokumentiert sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- rust
- Bereich
- computer-graphics
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100