diff --git a/INSTALL b/INSTALL index 577417639..c5d1bbb85 100644 --- a/INSTALL +++ b/INSTALL @@ -1,5 +1,5 @@ -Installing libpng version 1.4.1alpha02 - November 27, 2009 +Installing libpng version 1.4.1alpha02 - December 11, 2009 On Unix/Linux and similar systems, you can simply type diff --git a/LICENSE b/LICENSE index 3bc890c96..43ee9a3b2 100644 --- a/LICENSE +++ b/LICENSE @@ -10,7 +10,7 @@ this sentence. This code is released under the libpng license. -libpng versions 1.2.6, August 15, 2004, through 1.4.1alpha02, November 27, 2009, are +libpng versions 1.2.6, August 15, 2004, through 1.4.1alpha02, December 11, 2009, are Copyright (c) 2004, 2006-2007 Glenn Randers-Pehrson, and are distributed according to the same disclaimer and license as libpng-1.2.5 with the following individual added to the list of Contributing Authors @@ -108,4 +108,4 @@ certification mark of the Open Source Initiative. Glenn Randers-Pehrson glennrp at users.sourceforge.net -November 27, 2009 +December 11, 2009 diff --git a/README b/README index 98b9ca914..3c8ddaa6c 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -README for libpng version 1.4.1alpha02 - November 27, 2009 (shared library 14.0) +README for libpng version 1.4.1alpha02 - December 11, 2009 (shared library 14.0) See the note about version numbers near the top of png.h See INSTALL for instructions on how to install libpng. diff --git a/example.c b/example.c index d1661d394..da15db75e 100644 --- a/example.c +++ b/example.c @@ -2,7 +2,7 @@ #if 0 /* in case someone actually tries to compile this */ /* example.c - an example of using libpng - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * This file has been placed in the public domain by the authors. * Maintained 1998-2009 Glenn Randers-Pehrson * Maintained 1996, 1997 Andreas Dilger) diff --git a/libpng-1.4.1alpha02.txt b/libpng-1.4.1alpha02.txt index 80e70573b..62ffdee38 100644 --- a/libpng-1.4.1alpha02.txt +++ b/libpng-1.4.1alpha02.txt @@ -1,6 +1,6 @@ libpng.txt - A description on how to use and modify libpng - libpng version 1.4.1alpha02 - November 28, 2009 + libpng version 1.4.1alpha02 - December 11, 2009 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2009 Glenn Randers-Pehrson @@ -11,7 +11,7 @@ libpng.txt - A description on how to use and modify libpng Based on: - libpng versions 0.97, January 1998, through 1.4.1alpha02 - November 28, 2009 + libpng versions 0.97, January 1998, through 1.4.1alpha02 - December 11, 2009 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2009 Glenn Randers-Pehrson @@ -938,20 +938,21 @@ images) is fully transparent, with png_set_invert_alpha(png_ptr); -The PNG format only supports pixels with postmultiplied alpha. +The PNG format only supports pixels with non-premultiplied alpha. If you want to replace the pixels, after reading them, with pixels that have premultiplied color samples, you can do this with - png_set_premultiply_alpha(png_ptr, output_gamma); + png_set_premultiply_alpha(png_ptr, postmultiply_gamma); -where gamma is a double containing the gamma associated with the -premultiplied pixels. The gamma of the input must also be available -when the premultiplication takes place, via a gAMA chunk in the -input file or via png_set_gAMA(). If neither is present, the -premultiplication will assume input_gamma==(1/2.2) +where postmultiply_gamma is a double containing the gamma associated +with the pixels after they have been premultiplied. The gamma of +the input must also be available when the premultiplication takes +place, via a gAMA chunk in the input file or via png_set_gAMA(). If +neither is present, the premultiplication will assume +input_gamma==(1/2.2) If you do this, any input with a tRNS chunk will be expanded to -have an alpha channel. +have an alpha channel, and all samples will be expanded to 16 bits. PNG files pack pixels of bit depths 1, 2, and 4 into bytes as small as they can, resulting in, for example, 8 pixels per byte for 1 bit @@ -3231,7 +3232,7 @@ Other rules can be inferred by inspecting the libpng source. XIII. Y2K Compliance in libpng -November 28, 2009 +December 11, 2009 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. diff --git a/libpng.3 b/libpng.3 index 2a9fc4783..77aff0020 100644 --- a/libpng.3 +++ b/libpng.3 @@ -1,4 +1,4 @@ -.TH LIBPNG 3 "November 28, 2009" +.TH LIBPNG 3 "December 11, 2009" .SH NAME libpng \- Portable Network Graphics (PNG) Reference Library 1.4.1alpha02 .SH SYNOPSIS @@ -781,7 +781,7 @@ Following is a copy of the libpng.txt file that accompanies libpng. .SH LIBPNG.TXT libpng.txt - A description on how to use and modify libpng - libpng version 1.4.1alpha02 - November 28, 2009 + libpng version 1.4.1alpha02 - December 11, 2009 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2009 Glenn Randers-Pehrson @@ -792,7 +792,7 @@ libpng.txt - A description on how to use and modify libpng Based on: - libpng versions 0.97, January 1998, through 1.4.1alpha02 - November 28, 2009 + libpng versions 0.97, January 1998, through 1.4.1alpha02 - December 11, 2009 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2009 Glenn Randers-Pehrson @@ -1719,20 +1719,21 @@ images) is fully transparent, with png_set_invert_alpha(png_ptr); -The PNG format only supports pixels with postmultiplied alpha. +The PNG format only supports pixels with non-premultiplied alpha. If you want to replace the pixels, after reading them, with pixels that have premultiplied color samples, you can do this with - png_set_premultiply_alpha(png_ptr, output_gamma); + png_set_premultiply_alpha(png_ptr, postmultiply_gamma); -where gamma is a double containing the gamma associated with the -premultiplied pixels. The gamma of the input must also be available -when the premultiplication takes place, via a gAMA chunk in the -input file or via png_set_gAMA(). If neither is present, the -premultiplication will assume input_gamma==(1/2.2) +where postmultiply_gamma is a double containing the gamma associated +with the pixels after they have been premultiplied. The gamma of +the input must also be available when the premultiplication takes +place, via a gAMA chunk in the input file or via png_set_gAMA(). If +neither is present, the premultiplication will assume +input_gamma==(1/2.2) If you do this, any input with a tRNS chunk will be expanded to -have an alpha channel. +have an alpha channel, and all samples will be expanded to 16 bits. PNG files pack pixels of bit depths 1, 2, and 4 into bytes as small as they can, resulting in, for example, 8 pixels per byte for 1 bit @@ -4012,7 +4013,7 @@ Other rules can be inferred by inspecting the libpng source. .SH XIII. Y2K Compliance in libpng -November 28, 2009 +December 11, 2009 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. @@ -4188,7 +4189,7 @@ the first widely used release: 1.4.0beta15-36 14 10400 14.so.0.0[.0] 1.4.0beta37-87 14 10400 14.so.14.0[.0] 1.4.0rc01 14 10400 14.so.14.0[.0] - 1.4.0beta88-107 14 10400 14.so.14.0[.0] + 1.4.0beta88-108 14 10400 14.so.14.0[.0] 1.4.1alpha01-02 14 10401 14.so.14.0[.0] Henceforth the source version will match the shared-library minor @@ -4245,7 +4246,7 @@ possible without all of you. Thanks to Frank J. T. Wojcik for helping with the documentation. -Libpng version 1.4.1alpha02 - November 28, 2009: +Libpng version 1.4.1alpha02 - December 11, 2009: Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc. Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net). @@ -4268,7 +4269,7 @@ this sentence. This code is released under the libpng license. -libpng versions 1.2.6, August 15, 2004, through 1.4.1alpha02, November 28, 2009, are +libpng versions 1.2.6, August 15, 2004, through 1.4.1alpha02, December 11, 2009, are Copyright (c) 2004,2006-2007 Glenn Randers-Pehrson, and are distributed according to the same disclaimer and license as libpng-1.2.5 with the following individual added to the list of Contributing Authors @@ -4367,7 +4368,7 @@ certification mark of the Open Source Initiative. Glenn Randers-Pehrson glennrp at users.sourceforge.net -November 28, 2009 +December 11, 2009 .\" end of man page diff --git a/libpngpf.3 b/libpngpf.3 index 62d4c28fd..9dc659aa2 100644 --- a/libpngpf.3 +++ b/libpngpf.3 @@ -1,4 +1,4 @@ -.TH LIBPNGPF 3 "November 28, 2009" +.TH LIBPNGPF 3 "December 11, 2009" .SH NAME libpng \- Portable Network Graphics (PNG) Reference Library 1.4.1alpha02 (private functions) diff --git a/png.5 b/png.5 index 2dd9b41de..ea6558ff5 100644 --- a/png.5 +++ b/png.5 @@ -1,4 +1,4 @@ -.TH PNG 5 "November 27, 2009" +.TH PNG 5 "December 11, 2009" .SH NAME png \- Portable Network Graphics (PNG) format .SH DESCRIPTION diff --git a/png.c b/png.c index 8ca82eb60..29a8d1ed6 100644 --- a/png.c +++ b/png.c @@ -1,7 +1,7 @@ /* png.c - location for general purpose libpng functions * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) @@ -548,13 +548,13 @@ png_get_copyright(png_structp png_ptr) #else #ifdef __STDC__ return ((png_charp) PNG_STRING_NEWLINE \ - "libpng version 1.4.1alpha02 - December 4, 2009" PNG_STRING_NEWLINE \ + "libpng version 1.4.1alpha02 - December 11, 2009" PNG_STRING_NEWLINE \ "Copyright (c) 1998-2009 Glenn Randers-Pehrson" PNG_STRING_NEWLINE \ "Copyright (c) 1996-1997 Andreas Dilger" PNG_STRING_NEWLINE \ "Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc." \ PNG_STRING_NEWLINE); #else - return ((png_charp) "libpng version 1.4.1alpha02 - December 4, 2009\ + return ((png_charp) "libpng version 1.4.1alpha02 - December 11, 2009\ Copyright (c) 1998-2009 Glenn Randers-Pehrson\ Copyright (c) 1996-1997 Andreas Dilger\ Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc."); diff --git a/png.h b/png.h index 15cae7367..d845ad9d5 100644 --- a/png.h +++ b/png.h @@ -1,7 +1,7 @@ /* png.h - header file for PNG reference library * - * libpng version 1.4.1alpha02 - December 4, 2009 + * libpng version 1.4.1alpha02 - December 11, 2009 * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) @@ -11,7 +11,7 @@ * Authors and maintainers: * libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat * libpng versions 0.89c, June 1996, through 0.96, May 1997: Andreas Dilger - * libpng versions 0.97, January 1998, through 1.4.1alpha02 - December 4, 2009: Glenn + * libpng versions 0.97, January 1998, through 1.4.1alpha02 - December 11, 2009: Glenn * See also "Contributing Authors", below. * * Note about libpng version numbers: @@ -164,7 +164,7 @@ * * This code is released under the libpng license. * - * libpng versions 1.2.6, August 15, 2004, through 1.4.1alpha02, December 4, 2009, are + * libpng versions 1.2.6, August 15, 2004, through 1.4.1alpha02, December 11, 2009, are * Copyright (c) 2004, 2006-2007 Glenn Randers-Pehrson, and are * distributed according to the same disclaimer and license as libpng-1.2.5 * with the following individual added to the list of Contributing Authors: @@ -340,7 +340,7 @@ /* Version information for png.h - this should match the version in png.c */ #define PNG_LIBPNG_VER_STRING "1.4.1alpha02" #define PNG_HEADER_VERSION_STRING \ - " libpng version 1.4.1alpha02 - December 4, 2009\n" + " libpng version 1.4.1alpha02 - December 11, 2009\n" #define PNG_LIBPNG_VER_SONUM 14 #define PNG_LIBPNG_VER_DLLNUM 14 diff --git a/pngconf.h b/pngconf.h index d00624f3a..9dca11382 100644 --- a/pngconf.h +++ b/pngconf.h @@ -1,7 +1,7 @@ /* pngconf.h - machine configurable file for libpng * - * libpng version 1.4.1alpha02 - December 4, 2009 + * libpng version 1.4.1alpha02 - December 11, 2009 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngerror.c b/pngerror.c index 64e3e4928..dead734ce 100644 --- a/pngerror.c +++ b/pngerror.c @@ -1,7 +1,7 @@ /* pngerror.c - stub functions for i/o and memory allocation * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/pngget.c b/pngget.c index 544988ff8..4c0807656 100644 --- a/pngget.c +++ b/pngget.c @@ -1,7 +1,7 @@ /* pngget.c - retrieval of values from info struct * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/pngmem.c b/pngmem.c index 969fc686a..0ae91c930 100644 --- a/pngmem.c +++ b/pngmem.c @@ -1,7 +1,7 @@ /* pngmem.c - stub functions for memory allocation * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/pngpread.c b/pngpread.c index c4dd73c94..21a98c9c0 100644 --- a/pngpread.c +++ b/pngpread.c @@ -1,7 +1,7 @@ /* pngpread.c - read a png file in push mode * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/pngpriv.h b/pngpriv.h index a80544c04..3b42c8f8f 100644 --- a/pngpriv.h +++ b/pngpriv.h @@ -1,7 +1,7 @@ /* pngpriv.h - private declarations for use inside libpng * - * libpng version 1.4.1alpha02 - December 4, 2009 + * libpng version 1.4.1alpha02 - December 11, 2009 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngread.c b/pngread.c index 04f723b2b..5fde617ff 100644 --- a/pngread.c +++ b/pngread.c @@ -1,7 +1,7 @@ /* pngread.c - read a PNG file * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/pngrio.c b/pngrio.c index c87097477..82b39a029 100644 --- a/pngrio.c +++ b/pngrio.c @@ -1,7 +1,7 @@ /* pngrio.c - functions for data input * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/pngrutil.c b/pngrutil.c index aaeee0f17..cc50265d1 100644 --- a/pngrutil.c +++ b/pngrutil.c @@ -1,7 +1,7 @@ /* pngrutil.c - utilities to read a PNG file * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/pngset.c b/pngset.c index 9c558c2f0..d2c2eaa7c 100644 --- a/pngset.c +++ b/pngset.c @@ -1,7 +1,7 @@ /* pngset.c - storage of image information into info struct * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/pngtest.c b/pngtest.c index b813788d5..e6f420a95 100644 --- a/pngtest.c +++ b/pngtest.c @@ -1,7 +1,7 @@ /* pngtest.c - a simple test program to test libpng * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/pngtrans.c b/pngtrans.c index 1c7829ad3..9a183163a 100644 --- a/pngtrans.c +++ b/pngtrans.c @@ -1,7 +1,7 @@ /* pngtrans.c - transforms the data in a row (used by both readers and writers) * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/pngwio.c b/pngwio.c index e79f15675..548e22636 100644 --- a/pngwio.c +++ b/pngwio.c @@ -1,7 +1,7 @@ /* pngwio.c - functions for data output * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/pngwrite.c b/pngwrite.c index def94b290..247095cf7 100644 --- a/pngwrite.c +++ b/pngwrite.c @@ -1,7 +1,7 @@ /* pngwrite.c - general routines to write a PNG file * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/pngwtran.c b/pngwtran.c index 7ba8f9f1a..f94cd8d0b 100644 --- a/pngwtran.c +++ b/pngwtran.c @@ -1,7 +1,7 @@ /* pngwtran.c - transforms the data in a row for PNG writers * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/pngwutil.c b/pngwutil.c index cd0a66eb6..d2ba8e260 100644 --- a/pngwutil.c +++ b/pngwutil.c @@ -1,7 +1,7 @@ /* pngwutil.c - utilities to write a PNG file * - * Last changed in libpng 1.4.0 [December 4, 2009] + * Last changed in libpng 1.4.0 [December 11, 2009] * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) diff --git a/scripts/README.txt b/scripts/README.txt index bc0a6eaf4..4e6cc921c 100644 --- a/scripts/README.txt +++ b/scripts/README.txt @@ -1,5 +1,5 @@ -Makefiles for libpng version 1.4.1alpha02 - December 4, 2009 +Makefiles for libpng version 1.4.1alpha02 - December 11, 2009 makefile.linux => Linux/ELF makefile (gcc, creates libpng14.so.14.1.4.1alpha02)