Commit Graph

13 Commits

Author SHA1 Message Date
7f5d360329 libgimp: always return a pixbuf from gimp_image_metadata_rotate_pixbuf()
For "no rotation" return a reference of the original, instead of NULL.
2014-06-05 20:38:38 +02:00
16e01dc193 libgimp: update docs of gimp_image_metadata_save_prepare() 2014-06-05 15:50:05 +02:00
3a4fedea7c libgimp: make gimp_image_metadata_save_prepare() suggest GimpMetadataSaveFlags
Return flags based on what metadata is actually present in the image.
Returning of a suggested value for GIMP_METADATA_SAVE_THUMBNAIL needs
support from gimp_image_metadata_load_prepare() and is still missing.

Port all plug-ins to use the new API, the suggested values are however
overridden by parasites and whatever special code was devised for the
individual plug-ins. This needs to be fixed.
2014-06-05 02:07:13 +02:00
dd6dca2435 Bug 730942 - "Rotate Image?" dialog doesn't offer understandable options
Add a preview of the rotated image and reword all labels.
2014-05-30 20:51:39 +02:00
c8c105b4df libgimp: oversight computing thumbnail size
exporting an image with metadata and thumbnail and with
an aspect ratio of w:h = 1:5, file-jpeg used to print:

(file-jpeg:): LibGimp-CRITICAL **: gimp_image_get_thumbnail: assertion 'width > 0 && width <= 1024' failed
(file-jpeg:): GdkPixbuf-CRITICAL **: gdk_pixbuf_get_rowstride: assertion 'GDK_IS_PIXBUF (pixbuf)' failed
(file-jpeg:): GdkPixbuf-CRITICAL **: gdk_pixbuf_get_n_channels: assertion 'GDK_IS_PIXBUF (pixbuf)' failed
(file-jpeg:): GdkPixbuf-CRITICAL **: gdk_pixbuf_get_width: assertion 'GDK_IS_PIXBUF (pixbuf)' failed
(file-jpeg:): GdkPixbuf-CRITICAL **: gdk_pixbuf_get_height: assertion 'GDK_IS_PIXBUF (pixbuf)' failed
(file-jpeg:): GdkPixbuf-CRITICAL **: gdk_pixbuf_get_pixels: assertion 'GDK_IS_PIXBUF (pixbuf)' failed
(file-jpeg:): GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
2014-05-02 18:44:45 +02:00
258806ea38 GIMP_METADATA_SAVE_* are bit fields so use | to test for bits in 'flags'. 2014-04-30 13:46:13 -04:00
c8bd782268 libgimp: bail out early in gimp_image_metadata_save_finish()
if no GimpMetadataSaveFlags are set.
2013-11-11 23:31:58 +01:00
1522c506a2 libgimp: add gimp_image_metadata_load_thumbnail()
which loads an image file's Exif thumbnail into a correctly rotated
gimp image.
2013-10-30 00:04:36 +01:00
8db3b4312d Global EXIF -> Exif string change (official spelling) 2013-10-29 22:48:46 +01:00
f9e2614c8c libgimp: use gexiv2_metadata_get_tag_interpreted_string() for the comment
So the charset="foo" is stripped away and we get the string as it is
supposed to be presented to the user.
2013-10-27 22:28:28 +01:00
4bc77a3123 libgimp: add API docs to libgimp/gimpmetadata.c 2013-10-27 19:42:48 +01:00
7cbe83d911 libgimp,plug-ins: split metadata loading into prepare() and finish()
So the plug-in has the chance to decide whether it wants to trust the
metadata information (e.g. resolution). Also reorder parameters in
gimp_image_metadata_save_finish(). Change all plug-ins accordingly.
2013-10-27 15:22:35 +01:00
21bed1e2fb Completely rewrite metadata handling using gexiv2
Based on original patches from Hartmut Kuhse and modified
by Michael Natterer. Changes include:

- remove libexif dependency and add a hard dependency on gexiv2
- typedef GExiv2Metadata to GimpMetadata to avoid having to
  include gexiv2 globally
- add basic GimpMetadata handling functions to libgimpbase
- add image and image file specific metadata functions to libgimp,
  including the exif orientation image rotate dialog
- port plug-ins to use the new APIs
- port file-tiff-save's UI to GtkBuilder
- add new plug-in "metadata" to view the image's metadata
- keep metadata around as GimpImage member in the core
- update the image's metadata on image size, resolution and precision
  changes
- obsolete the old metadata parasites
- migrate the old parasites to new GimpMetadata object on XCF load
2013-10-27 01:02:17 +02:00