-
-
Notifications
You must be signed in to change notification settings - Fork 420
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
Update EXIF metadata without re-encoding JPEG image #530
Comments
There is currently no support for editing the metadata without decoding and encoding the image. And I have not seen any other libraries that can do that without spawning a process to do this. It should be possible to add something like that this to this library because there is already a class that can be used to optimize |
Thanks for confirming. Glad I checked, as I might have ended up spoiling my original-res photos with tag editing! I'll look at spawning exiftool for now though. Will modify the title of this issue to fit the 'enhancement' tag. |
+1 here... Id very much like to be able to edit the metadata/exif without touching the image. Please let me know if this should be a separate issue, but I thought it might be appropriate here: I would also like to be able to add/edit the thumbnail image stored in the exif tags 0x501b (ThumbnailData), and 0x5023 (ThumbnailCompression). Or, is this handled in existing code somewhere, and I have missed it? The Exif profile only refers to CreateThumbnail (which only returns an existing thumbnail?), and RemoveThumbnail. The code I am currently trying to use is as follows, but saving the image results in changes to the jpg itsself when saved. Im unable to copy the properties to MagickImage because it will not accept those IDs.
I also think the ThumbnailDateTime = 0x5033 would be useful Thanks heaps for a great extension and all your work Dirk! :) |
This one can update EXIF lossless, bu I don't know does it implement. |
I think this repo do extract Exif without reading/decoding whole file. I have tested both Magick and this repo and the difference is abismal in memory and time. Not complaining here, just leting you know that there are some alternatives (I do not know how clean code or proper implementations they are) A+ |
I'm building an image processing app using .Net Core 3.0 and blazor. I'm using Magick.Net (latest version, Q16-AnyCPU, running on OSX and also on Linux) to read from and write to the IPTC tag list. I have two questions:
My code to add a tag looks something like this:
Is this the right approach? Is there a better way? There aren't really any good code samples for IPTC writing, so I wanted to check I've not missed an API to just add a single keyword to the existing set of keywords.
The reason this question cropped up is because I had a 7.6MB image on disk, added a single keyword using the code above, and the resulting image was 6.8MB - which seems to me like it may have re-encoded the image and lost some data into the process. I could just spawn a process and run exiftool, but it's cleaner to do the IPTC tag changes in-process, particularly when the thing I'm writing is cross-platform.
Thanks for the help!
The text was updated successfully, but these errors were encountered: