tiff: Flag multi-page TIFF files

Add the "multipage" option to TIFF files with multiple pages. This will
allow applications that use gdk-pixbuf to display images to detect them,
and offer to open them in more capable readers (such as GIMP, or
Evince).

https://bugzilla.gnome.org/show_bug.cgi?id=335959
doc: Update supported options

Document the "multipage" option added in commit
09b3fc03284ac4f9a4f466ba908f9cd7309b2ced
lib: Add gdk_pixbuf_get_options() helper

So people don't have to guess the possible values of "key" in
gdk_pixbuf_get_option() calls

https://bugzilla.gnome.org/show_bug.cgi?id=674858
lib: Deprecate GdkPixdata

GdkPixdata has a number of problems, including:
- it doesn't use the original files, losing metadata
- its RLE compression is ineffecient, even more so for lossy formats
- the way it's implemented doesn't support data > 64 kB on Windows
  (See https://bugzilla.gnome.org/show_bug.cgi?id=603706)
doc: Fix comment characters in GdkPixdata API docs
lib: Add deprecation guards around gdk_pixbuf_new_from_inline()
doc: Fix gtk-doc warning

gdk-pixbuf.c:663: Warning: GdkPixbuf: GObject-Introspection specific
GTK-Doc tag "Rename to" has been deprecated, please use annotations on
the identifier instead.
lib: Stop using deprecated --strip-prefix for g-ir-scanner
xlib: Honour requested depth

Honour requested depth in gdk_pixbuf_xlib_init_with_depth.
The function xlib_rgb_choose_visual_for_xprint ignores its argument;
add it to the template so that XGetVisualInfo can do the right thing.

https://bugzilla.gnome.org/show_bug.cgi?id=631837
lib: Annotate var-arg gdk_pixbuf_save*()

Annotate var-args gdk_pixbuf_save*() functions as aliases for save*v()
so that the functions shadow the var-arg variants.

https://bugzilla.gnome.org/show_bug.cgi?id=670372
gif: Minimize memory usage for gif animation

Update the logic to create the next frame.
When the new frame uses a buffer from the previous frame, in retain,
revert or dispose mode, try to reuse the allocated buffer from the
previous frame.

This reduces allocated memory by an order of magnitude.

For other cases when we can't use the old buffer, clean up the previous
buffers after the new frame has been handled.

https://bugzilla.gnome.org/show_bug.cgi?id=585425
lib: Add more g-i metadata for gdk_pixbuf_get_options
pixops: Special-case compositing/copying with no scaling

When there is no scaling involved, make gdk_pixbuf_composite_color()
faster by avoiding the scaling code path.

https://bugzilla.gnome.org/show_bug.cgi?id=80927
png: Return error for truncated PNG files

When a PNG image couldn't be loaded at the end of a progressive
load operation, throw an error.

The error string is already translated as part of the BMP and
PNM loaders.

https://bugzilla.gnome.org/show_bug.cgi?id=524216
tests: Add test image from bug 524216

So we can check that an error is thrown.

https://bugzilla.gnome.org/show_bug.cgi?id=524216
Add JPEG image density metadata support

https://bugzilla.gnome.org/show_bug.cgi?id=701622
Add PNG image density metadata support

https://bugzilla.gnome.org/show_bug.cgi?id=466372
Move density unit convesion macros into a common header. Fix conversion from dpcm to dpi
doc: Move gdk_pixbuf_set_option() next to _get_option()
lib: Remove incorrect info about area-prepared signal

It is not safe to fill the pixbuf returned from area-prepared with a
background colour as a number of loaders (notably XPM and SVG) will
only have information about the size and characteristics of the image
after it's been fully loaded. Filling the background colour would then
overwrite the image we just loaded.

Given that this won't work properly with anything but 100% transparent
or 100% solid pixels, remove that advice from the docs. Instead,
applications should rely on their toolkits to composite over a
background colour.

https://bugzilla.gnome.org/show_bug.cgi?id=589334