-
Notifications
You must be signed in to change notification settings - Fork 11
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
feat: Add vips_image_get_fields #50
base: master
Are you sure you want to change the base?
Conversation
Oh nice! Thank you for doing this work. I'll have a read. I started tinkering with php-ffi here: https://github.com/libvips/php-vips/blob/switch-to-php-ffi/examples/vips-ffi.php Just an experiment, currently unfinished, etc. |
Thanks, I'll take a look! Do you plan on keeping the same API with the FFI Implementation? |
I was planning to redo it along the lines of pyvips --- so I'd make classes to wrap GValue and GObject, then use those to write php-vips would look the same to users of that interface, but have a new backend. |
I've done some first stuff in that vein (I hope) on my branch here. I'll try to extend that a bit, seems to be going well so far though. Not sure about On another note, did you have time to do a lookover for this PR? Or do you want me to create a PR for the change in php-vips first? |
I've mostly done a php ffi wrapper for libvips here: https://github.com/libvips/php-vips/blob/switch-to-php-ffi/examples/vips-ffi.php It needs breaking into a set of classes, some stubs fleshing out, and some tidying up, but it does seem to work. I see:
So that's picking a loader for a test JPG file, making the loader, introspecting to get the args, setting the filename, building the operation, and pulling out the constructed image. I think the next step is to copy-paste chunks of that into the php binding to replace php-vips-ext. |
Hey, since we spoke about this in the issue I've gone ahead and added the method to the extension.
I'm not a C Dev, so apoligies if anything's amiss. The tests all pass (and I don't think I've seen a codestyler), so the PR should be okay.
The only thing I'm not entirely certain about is the
gvalue
field that contains the fields. I've tried to unref it withg_object_unref
but that Segfaults. It currently doesn't report any memory leaks, so I guess it's alright?Next Step is going to add it to the PHP Lib. After I've done that I may do an experiment over the holidays in regards to PHP FFI, but I can't promise anything yet.