-
-
Notifications
You must be signed in to change notification settings - Fork 707
svgload: introduce rgb128 parameter for SVG 128-bit load support #4523
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems to work well! I marked a few style things that I think need changing.
... and thank you for doing this work, Konrad, good job. |
3e74ffb
to
9ca1b76
Compare
9ca1b76
to
c6ffae0
Compare
Thanks for your review @jcupitt . I did my best to apply all your great suggestions. Please take a look again at your convenience. |
Commit kleisauke@c4d898f has some minor formatting improvements and fixes the compilation when ../libvips/foreign/svgload.c: In function ‘vips_foreign_load_svg_load’:
../libvips/foreign/svgload.c:707:13: error: ‘svg’ undeclared (first use in this function)
707 | if (svg->rgb128) {
| ^~~
../libvips/foreign/svgload.c:707:13: note: each undeclared identifier is reported only once for each function it appears in
../libvips/foreign/svgload.c:708:28: error: ‘class’ undeclared (first use in this function)
708 | vips_error(class->nickname, "128-bit rendering is not supported with this version");
| ^~~~~ Feel free to cherry-pick. |
Thanks @kleisauke ! I cherry-picked whole your commit. |
Great! It's looking rather neat now, I think. We need two more things:
|
Sorry to bring this up so late, but I wonder if Savers use Does anyone have any thoughts on this? |
That's a very good point. I was also thinking about it for a while. I did some quick research and haven't found any loaders exposing such option. On one hand - I'm happy to refactor it to be |
Thanks! I'd postpone applying this for a while till we have a conclusion re: |
@jcupitt I've followed your instructions with an assumption for now that keeping a |
035f6bd
to
ff058ef
Compare
OK, merged! Thank you for working on this feature, @kstanikviacbs. |
This wouldn't be possible without your assistance @jcupitt . Thanks for that and making it possible to introduce it. |
With the increasing demand for high quality images - a need of rendering SVG with increased color-depth (more than 8 bit) has also appeared.
Given Cairo introduced support for new data format unlocking this option for libvips -
CAIRO_FORMAT_RGBA128F
: https://www.cairographics.org/news/cairo-1.17.2/ - this PR is an attempt to introducergb128
flag intosvgload
to enable high-bit SVG rendering if needed.