This patch adds an icc-profile option to a GdkPixbuf which can
be used to read or write an embedded ICC profile.
Add PNG support for now, but other image formats are awaiting
review.
This enables applications to read out the compression of a TIFF image
and also makes it possible to apply the same or a different
compression when saving.
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=584700
Use g_*gettext functions in gdk-pixbuf instead direct gettext
calls to benefit from the maybe-dont-translate functionality
in GLib. Also, replace a hand-rolled version by g_dpgettext2
in gtkbuilderparser.c. Fixes bug 585791.
* gdk-pixbuf-io.c (_gdk_pixbuf_get_module): If pure sniffing
yields uncertain results, try again with the filename.
Patch by Tyler Lawson
svn path=/trunk/; revision=22433
2009-02-12 Cody Russell <bratsche@gnome.org>
Bug 571576 – gdk_pixbuf_save_to_stream() broken
* gdk-pixbuf/gdk-pixbuf-io.c: Fix gdk_pixbuf_save_to_stream() so that
it does not always return FALSE (even when it succeeds), and also so
that it does not set error to NULL when something goes wrong.
svn path=/trunk/; revision=22322
2009-01-07 Matthias Clasen <mclasen@redhat.com>
Bug 566862 – pixbuf_new_from_file does not autodetect format
* gdk-pixbuf-io.c (_gdk_pixbuf_get_module): Go back to sniffing
without looking at the filename, to avoid breaking expected
functionality.
svn path=/trunk/; revision=22073
2008-09-13 Tor Lillqvist <tml@novell.com>
* gdk-pixbuf/gdk-pixbuf-io.c
* gtk/gtkmain.c: Don't use the deprectated
g_win32_get_package_installation_directory() and
g_win32_get_package_installation_subdirectory() functions. Use
g_win32_get_package_installation_directory_of_module()
instead. Also, don't use the deprecated silly
G_WIN32_DLLMAIN_FOR_DLL_NAME macro, but an explicit minimal
DllMain() that just saves the DLL handle.
svn path=/trunk/; revision=21381
2008-09-13 Tor Lillqvist <tml@novell.com>
* gdk-pixbuf/gdk-pixbuf-io.c
* gtk/gtkmain.c: Do as the docs for
g_win32_get_package_installation_directory() say and pass NULL as
the first parameter.
svn path=/trunk/; revision=21379
2008-07-11 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-io.c: Use GIO for sniffing image types, except
on Win32, where GIO doesn't do any sniffing.
svn path=/trunk/; revision=20820
any of the loaders
* queryloaders.c (write_loader_info): Add the license info
after the description.
* gdk-pixbuf-io.c (gdk_pixbuf_io_init): Read the license info
from the module file. Reported by Andrey Tsyvarev.
svn path=/trunk/; revision=20241
2008-05-27 Tor Lillqvist <tml@novell.com>
* io-*.c: Use explicit G_MODULE_EXPORT decoration when building
the loader in question as a module.
* gdk-pixbuf-io.c: Enable included build of the icns and jasper
loaders.
svn path=/trunk/; revision=20192
2008-03-23 Björn Lindqvist <bjourne@gmail.com>
* gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Guard
against NULL pointer. (#467051, Gian Mario Tagliaretti)
svn path=/trunk/; revision=19929
2008-03-21 Tor Lillqvist <tml@novell.com>
Import the GDI+ gdk-pixbuf loaders for Windows by Dominic
Lachowicz and Alberto Ruiz into the GTK+ tree, from the
gdip-pixbuf-loader module.
* configure.in: Add switch --disable-gdiplus-loaders that disables
building of the GDI+ loaders.
When including loaders in the gdk-pixbuf library, either build in
abll the GDI+ ones or none of them. Use just -DINCLUDE_gdiplus in
$INCLUDED_LOADER_DEFINE to signal building them in.
Add Automake conditionals BUILD_GDIPLUS_LOADERS to indicate
whether the GDI+ loaders should be built and INCLUDE_GDIPLUS to
indicate whether they should be built-in.
For the rest of the changes, see gdk-pixbuf/ChangeLog.
In gdk-pixbuf:
* Makefile.am: Add the bits and pieces for the GDI+ loaders. When
building GDI+ loaders don't build the traditional ones for the
same formats. Always build the traditional PNG loader, though, as
it isn't possible to read and write PNG tEXt chunks through GDI+,
and GIMP at least needs that functionality in the gdk-pixbuf PNG
loader.
Either build all the GDI+ loaders (except the PNG one) into
libgdk-pixbuf, or build them all as DLLs. I don't see any reason
to enable cherry-picking among them whether to build in or not.
* io-gdip-animation.c
* io-gdip-animation.h
* io-gdip-bmp.c
* io-gdip-emf.c
* io-gdip-gif.c
* io-gdip-ico.c
* io-gdip-jpeg.c
* io-gdip-native.h
* io-gdip-png.c
* io-gdip-propertytags.h
* io-gdip-tiff.c
* io-gdip-utils.c
* io-gdip-utils.h
* io-gdip-wmf.c: New files. Note that io-gdip-png.c is not
currently used.
* gdk-pixbuf-io.c: Add the bits and pieces for built-in GDI+
loaders.
svn path=/trunk/; revision=19914
2008-02-15 Matthias Clasen <mclasen@redhat.com>
* configure.in: Go back to 2.13.0 as version for now,
as there was no consensus to do the jump.
* many other places: Update Since: tags.
svn path=/trunk/; revision=19586
2008-02-12 Matthias Clasen <mclasne@redhat.com>
* gdk-pixbuf-io.c (at_scale_size_prepared_cb): Don't let
the width or height go below 1. (#516024, Christian Persch)
svn path=/trunk/; revision=19534
2008-01-16 Michael Natterer <mitch@imendio.com>
* gdk-pixbuf-io.c (save_to_stream): fix signature of this function
and propagate errors from g_output_stream_write(). Return error
also on incomplete writes (which don't generate an error by
themselves).
Unrelated:
(gdk_pixbuf_io_init): initialize "builtin_module" on a separate
line to avoid compiler warning in the common case of no built-in
modules.
svn path=/trunk/; revision=19378
2006-10-11 Tor Lillqvist <tml@novell.com>
* configure.in: Enable having some gdk-pixbuf loaders built-in
even if loading the others dynamically. Define Automake
conditional INCLUDE_FOO for each loader as TRUE if that loader is
built-in. See also gdk-pixbuf/ChangeLog.
2006-10-11 Tor Lillqvist <tml@novell.com>
Enable having some loaders built-in even if loading the others
dynamically. Have loaders in the same order as in configure.in in
all places where they are handled/listed.
* Makefile.am: Define the STATIC_FOO_LIB and FOO_LIB macros
conditionally depending on whether said loader is built-in or
not. Use the names libstatic-pixbufloader-foo.la instead of
libpixbufloader-static-foo.la for the built-in ones so that the
"echo libpixbufloader-*.la" won't match them.
* gdk-pixbuf-io.c: Reorganize code as to plumb the built-in
loaders also if USE_GMODULE. Don't warn about a missing
gdk-pixbuf.loaders file if we have at least one included loader.
* gdk-pixbuf-private.h
* io-*.c: Don't define a generic MODULE_ENTRY, as we can't use it
in the loaders anyway. Each loader needs to check if INCLUDE_foo
is defined.
2006-09-10 Matthias Clasen <mclasen@redhat.com>
* Commit a patch by Behdad to fix typos, omissions and other
errors in the symbol aliasing, and add checks for local PLT
entries. (#354687, Behdad Esfahbod)
2006-08-16 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_scale):
Stop loading an animation if the first frame is complete.
(#350911, Christian Neumair)
2006-03-20 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-animation.c:
* gdk-pixbuf-io.c:
* io-xpm.c:
* io-xbm.c:
* io-gif.c: Always save errno to a temporary before making
other calls. (#335179, Morten Welinder)
2006-02-28 Anders Carlsson <andersca@imendio.com>
* gdk-pixbuf-io.c:
Update documentation now that tiff supports saving.
* io-tiff.c:
(tiff_load_read):
(tiff_load_write):
(tiff_load_seek):
(tiff_load_close):
(tiff_load_size):
(tiff_load_map_file):
(tiff_load_unmap_file):
(gdk_pixbuf__tiff_image_stop_load):
Rename callback functions that are used during loading.
(tiff_save_read):
(tiff_save_write):
(tiff_save_seek):
(tiff_save_close):
(tiff_save_size):
(create_save_context):
(free_save_context):
New callback functions which operate on a memory buffer.
(gdk_pixbuf__tiff_image_save_to_callback):
Implement saving of pixbufs to tiffs.
(save_to_file_cb):
(gdk_pixbuf__tiff_image_save):
New function that saves a pixbuf to a FILE handle. Uses
save_to_callback.
(fill_vtable):
Add new functions.
(fill_info):
Change flags since this module supports writing now.
2005-08-30 Matthias Clasen <mclasen@redhat.com>
* io-png.c (png_save_to_callback_write_func): Add a cast
to avoid compiler warnings.
* pixops/timescale.c (main): Declare src_buf, dest_buf as
unsigned to avoid compiler warnings.
* gdk-pixbuf-io.h: Declare the prefix and mask members of
GdkPixbufModulePattern as char*, to avoid compiler warnings.
* io-ani.c (ani_load_chunk): Use g_try_new() in some places.
2005-07-22 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-io.c (format_check): Interpret patterns where
the first byte of the mask is '*' as unanchored. (#311011)
(gdk_pixbuf_new_from_file): Use the first 256 bytes for
sniffing the file format.
2005-07-01 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_scale): Allow
-1 for width/height and interpret them as "not constrained".
(#309258, Mark McLoughlin)