[devel] Fix typos in comments, add new API synopses to libpng.3
diff --git a/ANNOUNCE b/ANNOUNCE
index 6d7110b..e2fe85d 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,5 +1,5 @@
-Libpng 1.5.3beta06 - May 7, 2011
+Libpng 1.5.3beta06 - May 8, 2011
This is not intended to be a public release. It will be replaced
within a few weeks by a public version or by another test version.
@@ -97,8 +97,9 @@
the code more robust. Also deflateEnd checking is added - previously
libpng would ignore an error at the end of the stream.
-Version 1.5.3beta06 [May 7, 2011]
+Version 1.5.3beta06 [May 8, 2011]
Removed the -D_ALL_SOURCE from definitions for AIX in CMakeLists.txt
+ Implementated premultiplied alpha support: png_set_alpha_mode API
Send comments/corrections/commendations to png-mng-implement at lists.sf.net:
(subscription required; visit
diff --git a/CHANGES b/CHANGES
index 5cb5626..2551ec0 100644
--- a/CHANGES
+++ b/CHANGES
@@ -3356,8 +3356,9 @@
the code more robust. Also deflateEnd checking is added - previously
libpng would ignore an error at the end of the stream.
-Version 1.5.3beta06 [May 7, 2011]
+Version 1.5.3beta06 [May 8, 2011]
Removed the -D_ALL_SOURCE from definitions for AIX in CMakeLists.txt
+ Implementated premultiplied alpha support: png_set_alpha_mode API
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit
diff --git a/libpng-manual.txt b/libpng-manual.txt
index c889aa4..8cb47bc 100644
--- a/libpng-manual.txt
+++ b/libpng-manual.txt
@@ -1,6 +1,6 @@
libpng-manual.txt - A description on how to use and modify libpng
- libpng version 1.5.3beta06 - May 7, 2011
+ libpng version 1.5.3beta06 - May 8, 2011
Updated and distributed by Glenn Randers-Pehrson
<glennrp at users.sourceforge.net>
Copyright (c) 1998-2011 Glenn Randers-Pehrson
@@ -11,7 +11,7 @@
Based on:
- libpng versions 0.97, January 1998, through 1.5.3beta06 - May 7, 2011
+ libpng versions 0.97, January 1998, through 1.5.3beta06 - May 8, 2011
Updated and distributed by Glenn Randers-Pehrson
Copyright (c) 1998-2011 Glenn Randers-Pehrson
@@ -4198,7 +4198,7 @@
XIV. Y2K Compliance in libpng
-May 7, 2011
+May 8, 2011
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 55f4235..935fa72 100644
--- a/libpng.3
+++ b/libpng.3
@@ -1,4 +1,4 @@
-.TH LIBPNG 3 "May 7, 2011"
+.TH LIBPNG 3 "May 8, 2011"
.SH NAME
libpng \- Portable Network Graphics (PNG) Reference Library 1.5.3beta06
.SH SYNOPSIS
@@ -512,6 +512,14 @@
\fI\fB
+\fBvoid png_set_alpha_mode (png_structp \fP\fIpng_ptr\fP\fB, int \fP\fImode\fP\fB, double \fIoutput_gamma\fP\fB);\fP
+
+\fI\fB
+
+\fBvoid png_set_alpha_mode_fixed (png_structp \fP\fIpng_ptr\fP\fB, int \fP\fImode\fP\fB, png_fixed_point \fIoutput_gamma\fP\fB);\fP
+
+\fI\fB
+
\fBvoid png_set_background (png_structp \fP\fIpng_ptr\fP\fB, png_color_16p \fP\fIbackground_color\fP\fB, int \fP\fIbackground_gamma_code\fP\fB, int \fP\fIneed_expand\fP\fB, double \fIbackground_gamma\fP\fB);\fP
\fI\fB
@@ -943,7 +951,7 @@
.SH LIBPNG.TXT
libpng-manual.txt - A description on how to use and modify libpng
- libpng version 1.5.3beta06 - May 7, 2011
+ libpng version 1.5.3beta06 - May 8, 2011
Updated and distributed by Glenn Randers-Pehrson
<glennrp at users.sourceforge.net>
Copyright (c) 1998-2011 Glenn Randers-Pehrson
@@ -954,7 +962,7 @@
Based on:
- libpng versions 0.97, January 1998, through 1.5.3beta06 - May 7, 2011
+ libpng versions 0.97, January 1998, through 1.5.3beta06 - May 8, 2011
Updated and distributed by Glenn Randers-Pehrson
Copyright (c) 1998-2011 Glenn Randers-Pehrson
@@ -2415,6 +2423,11 @@
gamma is, and why all applications should support it. It is strongly
recommended that PNG viewers support gamma correction.
+This API unconditionally sets the screen and file gamma values, so it will
+override the value in the PNG file unless it is called before the PNG file
+reading starts. For this reason you must always call it with the PNG file
+value when you call it in this position:
+
if (png_get_gAMA(png_ptr, info_ptr, &file_gamma))
png_set_gamma(png_ptr, screen_gamma, file_gamma);
@@ -5136,7 +5149,7 @@
.SH XIV. Y2K Compliance in libpng
-May 7, 2011
+May 8, 2011
Since the PNG Development group is an ad-hoc body, we can't make
an official declaration.
@@ -5388,7 +5401,7 @@
Thanks to Frank J. T. Wojcik for helping with the documentation.
-Libpng version 1.5.3beta06 - May 7, 2011:
+Libpng version 1.5.3beta06 - May 8, 2011:
Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
@@ -5411,7 +5424,7 @@
This code is released under the libpng license.
-libpng versions 1.2.6, August 15, 2004, through 1.5.3beta06, May 7, 2011, are
+libpng versions 1.2.6, August 15, 2004, through 1.5.3beta06, May 8, 2011, 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
@@ -5510,7 +5523,7 @@
Glenn Randers-Pehrson
glennrp at users.sourceforge.net
-May 7, 2011
+May 8, 2011
.\" end of man page
diff --git a/png.h b/png.h
index 6cae5e1..ebe214e 100644
--- a/png.h
+++ b/png.h
@@ -1,7 +1,7 @@
/* png.h - header file for PNG reference library
*
- * libpng version 1.5.3beta06 - May 7, 2011
+ * libpng version 1.5.3beta06 - May 8, 2011
* Copyright (c) 1998-2011 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.5.3beta06 - May 7, 2011: Glenn
+ * libpng versions 0.97, January 1998, through 1.5.3beta06 - May 8, 2011: Glenn
* See also "Contributing Authors", below.
*
* Note about libpng version numbers:
@@ -182,7 +182,7 @@
*
* This code is released under the libpng license.
*
- * libpng versions 1.2.6, August 15, 2004, through 1.5.3beta06, May 7, 2011, are
+ * libpng versions 1.2.6, August 15, 2004, through 1.5.3beta06, May 8, 2011, are
* Copyright (c) 2004, 2006-2011 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:
@@ -294,7 +294,7 @@
* Y2K compliance in libpng:
* =========================
*
- * May 7, 2011
+ * May 8, 2011
*
* Since the PNG Development group is an ad-hoc body, we can't make
* an official declaration.
@@ -357,7 +357,7 @@
/* Version information for png.h - this should match the version in png.c */
#define PNG_LIBPNG_VER_STRING "1.5.3beta06"
#define PNG_HEADER_VERSION_STRING \
- " libpng version 1.5.3beta06 - May 7, 2011\n"
+ " libpng version 1.5.3beta06 - May 8, 2011\n"
#define PNG_LIBPNG_VER_SONUM 15
#define PNG_LIBPNG_VER_DLLNUM 15
@@ -1145,7 +1145,7 @@
* standard alpha composition is relatively low, because the pixels are
* isolated, therefore typically the accuracy loss in storing 8 bit linear
* values is acceptable. (This is not true if the alpha channel is used to
- * simiulate transparency over large areas - use 16 bits or the PNG format in
+ * simulate transparency over large areas - use 16 bits or the PNG format in
* this case!) This is the 'OPTIMIZED' format. For this format a pixel is
* treated as opaque only if the alpha value is equal to the maximum value.
*
@@ -1229,7 +1229,7 @@
* values.
*/
#define PNG_DEFAULT_sRGB 0 /* sRGB gamma and color space */
-#define PNG_GAMMA_sRGB 220000 /* Television standards - matchs sRGB gamma */
+#define PNG_GAMMA_sRGB 220000 /* Television standards--matches sRGB gamma */
#define PNG_GAMMA_MAC 151724 /* Television with a 1.45 correction table */
#define PNG_GAMMA_LINEAR PNG_FP_1 /* Linear */
@@ -1248,7 +1248,7 @@
* display preceeded by a power-law lookup table of power 1.45. This is how
* early Mac systems behaved.
*
- * png_set_alpha_mode(pp, PNG_ALPHA_STANDRAD, PNG_GAMMA_LINEAR);
+ * png_set_alpha_mode(pp, PNG_ALPHA_STANDARD, PNG_GAMMA_LINEAR);
* This is the classic Jim Blinn approach and will work in academic
* environments where everything is done by the book. It has the shortcoming
* of assuming that input PNG data with no gamma information is linear - this
@@ -1413,7 +1413,7 @@
#define PNG_GAMMA_THRESHOLD (PNG_GAMMA_THRESHOLD_FIXED*.00001)
/* Handle gamma correction. Screen_gamma=(display_exponent).
- * NOTE: this API simply sets the screen and file gamma values, it will
+ * NOTE: this API simply sets the screen and file gamma values. It will
* therefore override the value for gamma in a PNG file if it is called after
* the file header has been read - use with care!
*/
diff --git a/pngrtran.c b/pngrtran.c
index 7c9c551..bc818f5 100644
--- a/pngrtran.c
+++ b/pngrtran.c
@@ -196,7 +196,7 @@
else if (output_gamma < 70000 || output_gamma > 300000)
png_error(png_ptr, "output gamma out of expected range");
- /* The default file gamma is the inverse of the output gamma, the output
+ /* The default file gamma is the inverse of the output gamma; the output
* gamma may be changed below so get the file value first:
*/
file_gamma = png_reciprocal(output_gamma);
@@ -260,7 +260,7 @@
/* But always set the output gamma: */
png_ptr->screen_gamma = output_gamma;
- /* Finally, if pre-multiplying, set the background fields to achive the
+ /* Finally, if pre-multiplying, set the background fields to achieve the
* desired result.
*/
if (compose)
@@ -1540,7 +1540,7 @@
/* Prevent the transformations being done again.
*
- * NOTE: this is highly dubious, it zaps the transformations in
+ * NOTE: this is highly dubious; it zaps the transformations in
* place. This seems inconsistent with the general treatment of the
* transformations elsewhere.
*/
@@ -1893,7 +1893,7 @@
png_error(png_ptr, "NULL row buffer");
}
- /* The following is debugging, prior to 1.5.3 the code was never compiled in,
+ /* The following is debugging; prior to 1.5.3 the code was never compiled in;
* in 1.5.3 PNG_FLAG_DETECT_UNINITIALIZED was added and the macro
* PNG_WARN_UNINITIALIZED_ROW removed. In 1.5 the new flag is set only for
* selected new APIs to ensure that there is no API change.