|
|
|
@ -1,29 +1,65 @@ |
|
|
|
|
|
|
|
|
|
/* png.h - header file for PNG reference library
|
|
|
|
|
* |
|
|
|
|
* libpng version 1.6.35, July 15, 2018 |
|
|
|
|
* libpng version 1.6.36 - December 1, 2018 |
|
|
|
|
* |
|
|
|
|
* Copyright (c) 2018 Cosmin Truta |
|
|
|
|
* Copyright (c) 1998-2002,2004,2006-2018 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.) |
|
|
|
|
* Copyright (c) 1996-1997 Andreas Dilger |
|
|
|
|
* Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. |
|
|
|
|
* |
|
|
|
|
* This code is released under the libpng license (See LICENSE, below) |
|
|
|
|
* This code is released under the libpng license. (See LICENSE, below.) |
|
|
|
|
* |
|
|
|
|
* Authors and maintainers: |
|
|
|
|
* libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat |
|
|
|
|
* libpng versions 0.89, June 1996, through 0.96, May 1997: Andreas Dilger |
|
|
|
|
* libpng versions 0.97, January 1998, through 1.6.35, July 15, 2018: |
|
|
|
|
* libpng versions 0.97, January 1998, through 1.6.35, July 2018: |
|
|
|
|
* Glenn Randers-Pehrson. |
|
|
|
|
* libpng version 1.6.36, December 1, 2018: Cosmin Truta |
|
|
|
|
* See also "Contributing Authors", below. |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* COPYRIGHT NOTICE, DISCLAIMER, and LICENSE: |
|
|
|
|
* COPYRIGHT NOTICE, DISCLAIMER, and LICENSE |
|
|
|
|
* ========================================= |
|
|
|
|
* |
|
|
|
|
* PNG Reference Library License version 2 |
|
|
|
|
* --------------------------------------- |
|
|
|
|
* |
|
|
|
|
* * Copyright (c) 1995-2018 The PNG Reference Library Authors. |
|
|
|
|
* * Copyright (c) 2018 Cosmin Truta. |
|
|
|
|
* * Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson. |
|
|
|
|
* * Copyright (c) 1996-1997 Andreas Dilger. |
|
|
|
|
* * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. |
|
|
|
|
* |
|
|
|
|
* The software is supplied "as is", without warranty of any kind, |
|
|
|
|
* express or implied, including, without limitation, the warranties |
|
|
|
|
* of merchantability, fitness for a particular purpose, title, and |
|
|
|
|
* non-infringement. In no even shall the Copyright owners, or |
|
|
|
|
* anyone distributing the software, be liable for any damages or |
|
|
|
|
* other liability, whether in contract, tort or otherwise, arising |
|
|
|
|
* from, out of, or in connection with the software, or the use or |
|
|
|
|
* other dealings in the software, even if advised of the possibility |
|
|
|
|
* of such damage. |
|
|
|
|
* |
|
|
|
|
* Permission is hereby granted to use, copy, modify, and distribute |
|
|
|
|
* this software, or portions hereof, for any purpose, without fee, |
|
|
|
|
* subject to the following restrictions: |
|
|
|
|
* |
|
|
|
|
* If you modify libpng you may insert additional notices immediately following |
|
|
|
|
* this sentence. |
|
|
|
|
* 1. The origin of this software must not be misrepresented; you |
|
|
|
|
* must not claim that you wrote the original software. If you |
|
|
|
|
* use this software in a product, an acknowledgment in the product |
|
|
|
|
* documentation would be appreciated, but is not required. |
|
|
|
|
* |
|
|
|
|
* This code is released under the libpng license. |
|
|
|
|
* 2. Altered source versions must be plainly marked as such, and must |
|
|
|
|
* not be misrepresented as being the original software. |
|
|
|
|
* |
|
|
|
|
* 3. This Copyright notice may not be removed or altered from any |
|
|
|
|
* source or altered source distribution. |
|
|
|
|
* |
|
|
|
|
* |
|
|
|
|
* PNG Reference Library License version 1 (for libpng 0.5 through 1.6.35) |
|
|
|
|
* ----------------------------------------------------------------------- |
|
|
|
|
* |
|
|
|
|
* libpng versions 1.0.7, July 1, 2000 through 1.6.35, July 15, 2018 are |
|
|
|
|
* Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson, are |
|
|
|
@ -31,38 +67,38 @@ |
|
|
|
|
* disclaimer and license as libpng-1.0.6 with the following individuals |
|
|
|
|
* added to the list of Contributing Authors: |
|
|
|
|
* |
|
|
|
|
* Simon-Pierre Cadieux |
|
|
|
|
* Eric S. Raymond |
|
|
|
|
* Mans Rullgard |
|
|
|
|
* Cosmin Truta |
|
|
|
|
* Gilles Vollant |
|
|
|
|
* James Yu |
|
|
|
|
* Mandar Sahastrabuddhe |
|
|
|
|
* Google Inc. |
|
|
|
|
* Vadim Barkov |
|
|
|
|
* Simon-Pierre Cadieux |
|
|
|
|
* Eric S. Raymond |
|
|
|
|
* Mans Rullgard |
|
|
|
|
* Cosmin Truta |
|
|
|
|
* Gilles Vollant |
|
|
|
|
* James Yu |
|
|
|
|
* Mandar Sahastrabuddhe |
|
|
|
|
* Google Inc. |
|
|
|
|
* Vadim Barkov |
|
|
|
|
* |
|
|
|
|
* and with the following additions to the disclaimer: |
|
|
|
|
* |
|
|
|
|
* There is no warranty against interference with your enjoyment of the |
|
|
|
|
* library or against infringement. There is no warranty that our |
|
|
|
|
* efforts or the library will fulfill any of your particular purposes |
|
|
|
|
* or needs. This library is provided with all faults, and the entire |
|
|
|
|
* risk of satisfactory quality, performance, accuracy, and effort is with |
|
|
|
|
* the user. |
|
|
|
|
* There is no warranty against interference with your enjoyment of |
|
|
|
|
* the library or against infringement. There is no warranty that our |
|
|
|
|
* efforts or the library will fulfill any of your particular purposes |
|
|
|
|
* or needs. This library is provided with all faults, and the entire |
|
|
|
|
* risk of satisfactory quality, performance, accuracy, and effort is |
|
|
|
|
* with the user. |
|
|
|
|
* |
|
|
|
|
* Some files in the "contrib" directory and some configure-generated |
|
|
|
|
* files that are distributed with libpng have other copyright owners and |
|
|
|
|
* files that are distributed with libpng have other copyright owners, and |
|
|
|
|
* are released under other open source licenses. |
|
|
|
|
* |
|
|
|
|
* libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are |
|
|
|
|
* Copyright (c) 1998-2000 Glenn Randers-Pehrson, are derived from |
|
|
|
|
* libpng-0.96, and are distributed according to the same disclaimer and |
|
|
|
|
* license as libpng-0.96, with the following individuals added to the list |
|
|
|
|
* of Contributing Authors: |
|
|
|
|
* license as libpng-0.96, with the following individuals added to the |
|
|
|
|
* list of Contributing Authors: |
|
|
|
|
* |
|
|
|
|
* Tom Lane |
|
|
|
|
* Glenn Randers-Pehrson |
|
|
|
|
* Willem van Schaik |
|
|
|
|
* Tom Lane |
|
|
|
|
* Glenn Randers-Pehrson |
|
|
|
|
* Willem van Schaik |
|
|
|
|
* |
|
|
|
|
* libpng versions 0.89, June 1996, through 0.96, May 1997, are |
|
|
|
|
* Copyright (c) 1996-1997 Andreas Dilger, are derived from libpng-0.88, |
|
|
|
@ -70,14 +106,14 @@ |
|
|
|
|
* libpng-0.88, with the following individuals added to the list of |
|
|
|
|
* Contributing Authors: |
|
|
|
|
* |
|
|
|
|
* John Bowler |
|
|
|
|
* Kevin Bracey |
|
|
|
|
* Sam Bushell |
|
|
|
|
* Magnus Holmgren |
|
|
|
|
* Greg Roelofs |
|
|
|
|
* Tom Tanner |
|
|
|
|
* John Bowler |
|
|
|
|
* Kevin Bracey |
|
|
|
|
* Sam Bushell |
|
|
|
|
* Magnus Holmgren |
|
|
|
|
* Greg Roelofs |
|
|
|
|
* Tom Tanner |
|
|
|
|
* |
|
|
|
|
* Some files in the "scripts" directory have other copyright owners |
|
|
|
|
* Some files in the "scripts" directory have other copyright owners, |
|
|
|
|
* but are released under this license. |
|
|
|
|
* |
|
|
|
|
* libpng versions 0.5, May 1995, through 0.88, January 1996, are |
|
|
|
@ -86,62 +122,49 @@ |
|
|
|
|
* For the purposes of this copyright and license, "Contributing Authors" |
|
|
|
|
* is defined as the following set of individuals: |
|
|
|
|
* |
|
|
|
|
* Andreas Dilger |
|
|
|
|
* Dave Martindale |
|
|
|
|
* Guy Eric Schalnat |
|
|
|
|
* Paul Schmidt |
|
|
|
|
* Tim Wegner |
|
|
|
|
* |
|
|
|
|
* The PNG Reference Library is supplied "AS IS". The Contributing Authors |
|
|
|
|
* and Group 42, Inc. disclaim all warranties, expressed or implied, |
|
|
|
|
* including, without limitation, the warranties of merchantability and of |
|
|
|
|
* fitness for any purpose. The Contributing Authors and Group 42, Inc. |
|
|
|
|
* assume no liability for direct, indirect, incidental, special, exemplary, |
|
|
|
|
* or consequential damages, which may result from the use of the PNG |
|
|
|
|
* Reference Library, even if advised of the possibility of such damage. |
|
|
|
|
* Andreas Dilger |
|
|
|
|
* Dave Martindale |
|
|
|
|
* Guy Eric Schalnat |
|
|
|
|
* Paul Schmidt |
|
|
|
|
* Tim Wegner |
|
|
|
|
* |
|
|
|
|
* The PNG Reference Library is supplied "AS IS". The Contributing |
|
|
|
|
* Authors and Group 42, Inc. disclaim all warranties, expressed or |
|
|
|
|
* implied, including, without limitation, the warranties of |
|
|
|
|
* merchantability and of fitness for any purpose. The Contributing |
|
|
|
|
* Authors and Group 42, Inc. assume no liability for direct, indirect, |
|
|
|
|
* incidental, special, exemplary, or consequential damages, which may |
|
|
|
|
* result from the use of the PNG Reference Library, even if advised of |
|
|
|
|
* the possibility of such damage. |
|
|
|
|
* |
|
|
|
|
* Permission is hereby granted to use, copy, modify, and distribute this |
|
|
|
|
* source code, or portions hereof, for any purpose, without fee, subject |
|
|
|
|
* to the following restrictions: |
|
|
|
|
* |
|
|
|
|
* 1. The origin of this source code must not be misrepresented. |
|
|
|
|
* 1. The origin of this source code must not be misrepresented. |
|
|
|
|
* |
|
|
|
|
* 2. Altered versions must be plainly marked as such and must not |
|
|
|
|
* be misrepresented as being the original source. |
|
|
|
|
* 2. Altered versions must be plainly marked as such and must not |
|
|
|
|
* be misrepresented as being the original source. |
|
|
|
|
* |
|
|
|
|
* 3. This Copyright notice may not be removed or altered from any |
|
|
|
|
* source or altered source distribution. |
|
|
|
|
* 3. This Copyright notice may not be removed or altered from any |
|
|
|
|
* source or altered source distribution. |
|
|
|
|
* |
|
|
|
|
* The Contributing Authors and Group 42, Inc. specifically permit, without |
|
|
|
|
* fee, and encourage the use of this source code as a component to |
|
|
|
|
* supporting the PNG file format in commercial products. If you use this |
|
|
|
|
* source code in a product, acknowledgment is not required but would be |
|
|
|
|
* appreciated. |
|
|
|
|
* The Contributing Authors and Group 42, Inc. specifically permit, |
|
|
|
|
* without fee, and encourage the use of this source code as a component |
|
|
|
|
* to supporting the PNG file format in commercial products. If you use |
|
|
|
|
* this source code in a product, acknowledgment is not required but would |
|
|
|
|
* be appreciated. |
|
|
|
|
* |
|
|
|
|
* END OF COPYRIGHT NOTICE, DISCLAIMER, and LICENSE. |
|
|
|
|
* |
|
|
|
|
* TRADEMARK: |
|
|
|
|
* TRADEMARK |
|
|
|
|
* ========= |
|
|
|
|
* |
|
|
|
|
* The name "libpng" has not been registered by the Copyright owner |
|
|
|
|
* The name "libpng" has not been registered by the Copyright owners |
|
|
|
|
* as a trademark in any jurisdiction. However, because libpng has |
|
|
|
|
* been distributed and maintained world-wide, continually since 1995, |
|
|
|
|
* the Copyright owner claims "common-law trademark protection" in any |
|
|
|
|
* the Copyright owners claim "common-law trademark protection" in any |
|
|
|
|
* jurisdiction where common-law trademark is recognized. |
|
|
|
|
* |
|
|
|
|
* OSI CERTIFICATION: |
|
|
|
|
* |
|
|
|
|
* Libpng is OSI Certified Open Source Software. OSI Certified Open Source is |
|
|
|
|
* a certification mark of the Open Source Initiative. OSI has not addressed |
|
|
|
|
* the additional disclaimers inserted at version 1.0.7. |
|
|
|
|
* |
|
|
|
|
* EXPORT CONTROL: |
|
|
|
|
* |
|
|
|
|
* The Copyright owner believes that the Export Control Classification |
|
|
|
|
* Number (ECCN) for libpng is EAR99, which means not subject to export |
|
|
|
|
* controls or International Traffic in Arms Regulations (ITAR) because |
|
|
|
|
* it is open source, publicly available software, that does not contain |
|
|
|
|
* any encryption software. See the EAR, paragraphs 734.3(b)(3) and |
|
|
|
|
* 734.7(b). |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
@ -207,23 +230,25 @@ |
|
|
|
|
* 1.0.7rc1-2 1 10007 2.1.0.7rc1-2 (binary compatible) |
|
|
|
|
* 1.0.7 1 10007 (still compatible) |
|
|
|
|
* ... |
|
|
|
|
* 1.0.19 10 10019 10.so.0.19[.0] |
|
|
|
|
* 1.0.69 10 10069 10.so.0.69[.0] |
|
|
|
|
* ... |
|
|
|
|
* 1.2.59 13 10257 12.so.0.59[.0] |
|
|
|
|
* 1.2.59 13 10259 12.so.0.59[.0] |
|
|
|
|
* ... |
|
|
|
|
* 1.5.30 15 10527 15.so.15.30[.0] |
|
|
|
|
* 1.4.20 14 10420 14.so.0.20[.0] |
|
|
|
|
* ... |
|
|
|
|
* 1.6.35 16 10635 16.so.16.35[.0] |
|
|
|
|
* |
|
|
|
|
* Henceforth the source version will match the shared-library major |
|
|
|
|
* and minor numbers; the shared-library major version number will be |
|
|
|
|
* used for changes in backward compatibility, as it is intended. The |
|
|
|
|
* PNG_LIBPNG_VER macro, which is not used within libpng but is available |
|
|
|
|
* for applications, is an unsigned integer of the form xyyzz corresponding |
|
|
|
|
* to the source version x.y.z (leading zeros in y and z). Beta versions |
|
|
|
|
* were given the previous public release number plus a letter, until |
|
|
|
|
* version 1.0.6j; from then on they were given the upcoming public |
|
|
|
|
* release number plus "betaNN" or "rcNN". |
|
|
|
|
* 1.5.30 15 10530 15.so.15.30[.0] |
|
|
|
|
* ... |
|
|
|
|
* 1.6.36 16 10636 16.so.16.36[.0] |
|
|
|
|
* |
|
|
|
|
* Henceforth the source version will match the shared-library major and |
|
|
|
|
* minor numbers; the shared-library major version number will be used for |
|
|
|
|
* changes in backward compatibility, as it is intended. |
|
|
|
|
* The PNG_LIBPNG_VER macro, which is not used within libpng but is |
|
|
|
|
* available for applications, is an unsigned integer of the form XYYZZ |
|
|
|
|
* corresponding to the source version X.Y.Z (leading zeros in Y and Z). |
|
|
|
|
* Beta versions were given the previous public release number plus a |
|
|
|
|
* letter, until version 1.0.6j; from then on they were given the upcoming |
|
|
|
|
* public release number plus "betaNN" or "rcNN". |
|
|
|
|
* |
|
|
|
|
* Binary incompatibility exists only when applications make direct access |
|
|
|
|
* to the info_ptr or png_ptr members through png.h, and the compiled |
|
|
|
@ -233,65 +258,8 @@ |
|
|
|
|
* in binary compatibility (e.g., when a new feature is added). |
|
|
|
|
* |
|
|
|
|
* See libpng.txt or libpng.3 for more information. The PNG specification |
|
|
|
|
* is available as a W3C Recommendation and as an ISO Specification, |
|
|
|
|
* <https://www.w3.org/TR/2003/REC-PNG-20031110/
|
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Y2K compliance in libpng: |
|
|
|
|
* ========================= |
|
|
|
|
* |
|
|
|
|
* July 15, 2018 |
|
|
|
|
* |
|
|
|
|
* Since the PNG Development group is an ad-hoc body, we can't make |
|
|
|
|
* an official declaration. |
|
|
|
|
* |
|
|
|
|
* This is your unofficial assurance that libpng from version 0.71 and |
|
|
|
|
* upward through 1.6.35 are Y2K compliant. It is my belief that |
|
|
|
|
* earlier versions were also Y2K compliant. |
|
|
|
|
* |
|
|
|
|
* Libpng only has two year fields. One is a 2-byte unsigned integer |
|
|
|
|
* that will hold years up to 65535. The other, which is deprecated, |
|
|
|
|
* holds the date in text format, and will hold years up to 9999. |
|
|
|
|
* |
|
|
|
|
* The integer is |
|
|
|
|
* "png_uint_16 year" in png_time_struct. |
|
|
|
|
* |
|
|
|
|
* The string is |
|
|
|
|
* "char time_buffer[29]" in png_struct. This is no longer used |
|
|
|
|
* in libpng-1.6.x and will be removed from libpng-1.7.0. |
|
|
|
|
* |
|
|
|
|
* There are seven time-related functions: |
|
|
|
|
* png.c: png_convert_to_rfc_1123_buffer() in png.c |
|
|
|
|
* (formerly png_convert_to_rfc_1123() prior to libpng-1.5.x and |
|
|
|
|
* png_convert_to_rfc_1152() in error prior to libpng-0.98) |
|
|
|
|
* png_convert_from_struct_tm() in pngwrite.c, called in pngwrite.c |
|
|
|
|
* png_convert_from_time_t() in pngwrite.c |
|
|
|
|
* png_get_tIME() in pngget.c |
|
|
|
|
* png_handle_tIME() in pngrutil.c, called in pngread.c |
|
|
|
|
* png_set_tIME() in pngset.c |
|
|
|
|
* png_write_tIME() in pngwutil.c, called in pngwrite.c |
|
|
|
|
* |
|
|
|
|
* All handle dates properly in a Y2K environment. The |
|
|
|
|
* png_convert_from_time_t() function calls gmtime() to convert from system |
|
|
|
|
* clock time, which returns (year - 1900), which we properly convert to |
|
|
|
|
* the full 4-digit year. There is a possibility that libpng applications |
|
|
|
|
* are not passing 4-digit years into the png_convert_to_rfc_1123_buffer() |
|
|
|
|
* function, or that they are incorrectly passing only a 2-digit year |
|
|
|
|
* instead of "year - 1900" into the png_convert_from_struct_tm() function, |
|
|
|
|
* but this is not under our control. The libpng documentation has always |
|
|
|
|
* stated that it works with 4-digit years, and the APIs have been |
|
|
|
|
* documented as such. |
|
|
|
|
* |
|
|
|
|
* The tIME chunk itself is also Y2K compliant. It uses a 2-byte unsigned |
|
|
|
|
* integer to hold the year, and can hold years as large as 65535. |
|
|
|
|
* |
|
|
|
|
* zlib, upon which libpng depends, is also Y2K compliant. It contains |
|
|
|
|
* no date-related code. |
|
|
|
|
* |
|
|
|
|
* Glenn Randers-Pehrson |
|
|
|
|
* libpng maintainer |
|
|
|
|
* PNG Development Group |
|
|
|
|
* is available as a W3C Recommendation and as an ISO/IEC Standard; see |
|
|
|
|
* <https://www.w3.org/TR/2003/REC-PNG-20031110/>
|
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
#ifndef PNG_H |
|
|
|
@ -309,8 +277,8 @@ |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
/* Version information for png.h - this should match the version in png.c */ |
|
|
|
|
#define PNG_LIBPNG_VER_STRING "1.6.35" |
|
|
|
|
#define PNG_HEADER_VERSION_STRING " libpng version 1.6.35 - July 15, 2018\n" |
|
|
|
|
#define PNG_LIBPNG_VER_STRING "1.6.36" |
|
|
|
|
#define PNG_HEADER_VERSION_STRING " libpng version 1.6.36 - December 1, 2018\n" |
|
|
|
|
|
|
|
|
|
#define PNG_LIBPNG_VER_SONUM 16 |
|
|
|
|
#define PNG_LIBPNG_VER_DLLNUM 16 |
|
|
|
@ -318,13 +286,13 @@ |
|
|
|
|
/* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */ |
|
|
|
|
#define PNG_LIBPNG_VER_MAJOR 1 |
|
|
|
|
#define PNG_LIBPNG_VER_MINOR 6 |
|
|
|
|
#define PNG_LIBPNG_VER_RELEASE 35 |
|
|
|
|
#define PNG_LIBPNG_VER_RELEASE 36 |
|
|
|
|
|
|
|
|
|
/* This should match the numeric part of the final component of
|
|
|
|
|
* PNG_LIBPNG_VER_STRING, omitting any leading zero: |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
#define PNG_LIBPNG_VER_BUILD 02 |
|
|
|
|
#define PNG_LIBPNG_VER_BUILD 0 |
|
|
|
|
|
|
|
|
|
/* Release Status */ |
|
|
|
|
#define PNG_LIBPNG_BUILD_ALPHA 1 |
|
|
|
@ -341,15 +309,16 @@ |
|
|
|
|
#define PNG_LIBPNG_BUILD_SPECIAL 32 /* Cannot be OR'ed with |
|
|
|
|
PNG_LIBPNG_BUILD_PRIVATE */ |
|
|
|
|
|
|
|
|
|
#define PNG_LIBPNG_BUILD_BASE_TYPE PNG_LIBPNG_BUILD_BETA |
|
|
|
|
#define PNG_LIBPNG_BUILD_BASE_TYPE PNG_LIBPNG_BUILD_STABLE |
|
|
|
|
|
|
|
|
|
/* Careful here. At one time, Guy wanted to use 082, but that would be octal.
|
|
|
|
|
* We must not include leading zeros. |
|
|
|
|
* Versions 0.7 through 1.0.0 were in the range 0 to 100 here (only |
|
|
|
|
* version 1.0.0 was mis-numbered 100 instead of 10000). From |
|
|
|
|
* version 1.0.1 it's xxyyzz, where x=major, y=minor, z=release |
|
|
|
|
/* Careful here. At one time, Guy wanted to use 082, but that
|
|
|
|
|
* would be octal. We must not include leading zeros. |
|
|
|
|
* Versions 0.7 through 1.0.0 were in the range 0 to 100 here |
|
|
|
|
* (only version 1.0.0 was mis-numbered 100 instead of 10000). |
|
|
|
|
* From version 1.0.1 it is: |
|
|
|
|
* XXYYZZ, where XX=major, YY=minor, ZZ=release |
|
|
|
|
*/ |
|
|
|
|
#define PNG_LIBPNG_VER 10635 /* 1.6.35 */ |
|
|
|
|
#define PNG_LIBPNG_VER 10636 /* 1.6.36 */ |
|
|
|
|
|
|
|
|
|
/* Library configuration: these options cannot be changed after
|
|
|
|
|
* the library has been built. |
|
|
|
@ -459,7 +428,7 @@ extern "C" { |
|
|
|
|
/* This triggers a compiler error in png.c, if png.c and png.h
|
|
|
|
|
* do not agree upon the version number. |
|
|
|
|
*/ |
|
|
|
|
typedef char* png_libpng_version_1_6_35; |
|
|
|
|
typedef char* png_libpng_version_1_6_36; |
|
|
|
|
|
|
|
|
|
/* Basic control structions. Read libpng-manual.txt or libpng.3 for more info.
|
|
|
|
|
* |
|
|
|
@ -2013,12 +1982,12 @@ PNG_FIXED_EXPORT(233, void, png_set_cHRM_XYZ_fixed, (png_const_structrp png_ptr, |
|
|
|
|
PNG_EXPORT(246, png_uint_32, png_get_eXIf, (png_const_structrp png_ptr, |
|
|
|
|
png_inforp info_ptr, png_bytep *exif)); |
|
|
|
|
PNG_EXPORT(247, void, png_set_eXIf, (png_const_structrp png_ptr, |
|
|
|
|
png_inforp info_ptr, const png_bytep exif)); |
|
|
|
|
png_inforp info_ptr, png_bytep exif)); |
|
|
|
|
|
|
|
|
|
PNG_EXPORT(248, png_uint_32, png_get_eXIf_1, (png_const_structrp png_ptr, |
|
|
|
|
png_const_inforp info_ptr, png_uint_32 *num_exif, png_bytep *exif)); |
|
|
|
|
PNG_EXPORT(249, void, png_set_eXIf_1, (png_const_structrp png_ptr, |
|
|
|
|
png_inforp info_ptr, const png_uint_32 num_exif, const png_bytep exif)); |
|
|
|
|
png_inforp info_ptr, png_uint_32 num_exif, png_bytep exif)); |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
#ifdef PNG_gAMA_SUPPORTED |
|
|
|
@ -2764,7 +2733,7 @@ typedef struct |
|
|
|
|
* |
|
|
|
|
* When the simplified API needs to convert between sRGB and linear colorspaces, |
|
|
|
|
* the actual sRGB transfer curve defined in the sRGB specification (see the |
|
|
|
|
* article at https://en.wikipedia.org/wiki/SRGB) is used, not the gamma=1/2.2
|
|
|
|
|
* article at <https://en.wikipedia.org/wiki/SRGB>) is used, not the gamma=1/2.2
|
|
|
|
|
* approximation used elsewhere in libpng. |
|
|
|
|
* |
|
|
|
|
* When an alpha channel is present it is expected to denote pixel coverage |
|
|
|
@ -2967,7 +2936,7 @@ typedef struct |
|
|
|
|
* 'flags' field of png_image. |
|
|
|
|
*/ |
|
|
|
|
#define PNG_IMAGE_FLAG_COLORSPACE_NOT_sRGB 0x01 |
|
|
|
|
/* This indicates the the RGB values of the in-memory bitmap do not
|
|
|
|
|
/* This indicates that the RGB values of the in-memory bitmap do not
|
|
|
|
|
* correspond to the red, green and blue end-points defined by sRGB. |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|