mirror of
				https://git.code.sf.net/p/libpng/code.git
				synced 2025-07-10 18:04:09 +02:00 
			
		
		
		
	[devel] Fixed some typos in the manual.
This commit is contained in:
		
							parent
							
								
									628b632419
								
							
						
					
					
						commit
						ab38979670
					
				
							
								
								
									
										224
									
								
								ANNOUNCE
									
									
									
									
									
								
							
							
						
						
									
										224
									
								
								ANNOUNCE
									
									
									
									
									
								
							@ -1,5 +1,5 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
Libpng 1.5.5beta01 - July 8, 2011
 | 
					Libpng 1.5.5beta01 - July 10, 2011
 | 
				
			||||||
 | 
					
 | 
				
			||||||
This is not intended to be a public release.  It will be replaced
 | 
					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.
 | 
					within a few weeks by a public version or by another test version.
 | 
				
			||||||
@ -24,226 +24,10 @@ Other information:
 | 
				
			|||||||
   1.5.5beta01-README.txt
 | 
					   1.5.5beta01-README.txt
 | 
				
			||||||
   1.5.5beta01-LICENSE.txt
 | 
					   1.5.5beta01-LICENSE.txt
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Changes since the last public release (1.5.2):
 | 
					Changes since the last public release (1.5.4):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Version 1.5.3beta01 [April 1, 2011]
 | 
					Version 1.5.5beta01 [July 10, 2011]
 | 
				
			||||||
  Re-initialize the zlib compressor before compressing non-IDAT chunks.
 | 
					  Fixed some typos in the manual.
 | 
				
			||||||
  Added API functions to set parameters for zlib compression of non-IDAT
 | 
					 | 
				
			||||||
    chunks.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.3beta02 [April 3, 2011]
 | 
					 | 
				
			||||||
  Updated scripts/symbols.def with new API functions.
 | 
					 | 
				
			||||||
  Only compile the new zlib re-initializing code when text or iCCP is
 | 
					 | 
				
			||||||
    supported, using PNG_WRITE_COMPRESSED_TEXT_SUPPORTED macro.
 | 
					 | 
				
			||||||
  Improved the optimization of the zlib CMF byte (see libpng-1.2.6beta03).
 | 
					 | 
				
			||||||
  Optimize the zlib CMF byte in non-IDAT compressed chunks
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.3beta03 [April 16, 2011]
 | 
					 | 
				
			||||||
  Fixed gcc -ansi -pedantic compile. A strict ANSI system does not have
 | 
					 | 
				
			||||||
    snprintf, and the "__STRICT_ANSI__" detects that condition more reliably
 | 
					 | 
				
			||||||
    than __STDC__ (John Bowler).
 | 
					 | 
				
			||||||
  Removed the PNG_PTR_NORETURN attribute because it too dangerous. It tells
 | 
					 | 
				
			||||||
    the compiler that a user supplied callback (the error handler) does not
 | 
					 | 
				
			||||||
    return, yet there is no guarantee in practice that the application code
 | 
					 | 
				
			||||||
    will correctly implement the error handler because the compiler only
 | 
					 | 
				
			||||||
    issues a warning if there is a mistake (John Bowler).
 | 
					 | 
				
			||||||
  Removed the no-longer-used PNG_DEPSTRUCT macro.
 | 
					 | 
				
			||||||
  Updated the zlib version to 1.2.5 in the VStudio project.
 | 
					 | 
				
			||||||
  Fixed 64-bit builds where png_uint_32 is smaller than png_size_t in
 | 
					 | 
				
			||||||
    pngwutil.c (John Bowler).
 | 
					 | 
				
			||||||
  Fixed bug with stripping the filler or alpha channel when writing, that
 | 
					 | 
				
			||||||
    was introduced in libpng-1.5.2beta01 (bug report by Andrew Church).
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.3beta04 [April 27, 2011]
 | 
					 | 
				
			||||||
  Updated pngtest.png with the new zlib CMF optimization.
 | 
					 | 
				
			||||||
  Cleaned up conditional compilation code and of background/gamma handling
 | 
					 | 
				
			||||||
    Internal changes only except a new option to avoid compiling the
 | 
					 | 
				
			||||||
    png_build_grayscale_palette API (which is not used at all internally.)
 | 
					 | 
				
			||||||
    The main change is to move the transform tests (READ_TRANSFORMS,
 | 
					 | 
				
			||||||
    WRITE_TRANSFORMS) up one level to the caller of the APIs.  This avoids
 | 
					 | 
				
			||||||
    calls to spurious functions if all transforms are disabled and slightly
 | 
					 | 
				
			||||||
    simplifies those functions.  Pngvalid modified to handle this.
 | 
					 | 
				
			||||||
    A minor change is to stop the strip_16 and expand_16 interfaces from
 | 
					 | 
				
			||||||
    disabling each other; this allows the future alpha premultiplication
 | 
					 | 
				
			||||||
    code to use 16-bit intermediate values while still producing 8-bit output.
 | 
					 | 
				
			||||||
    png_do_background and png_do_gamma have been simplified to take a single
 | 
					 | 
				
			||||||
    pointer to the png_struct rather than pointers to every item required
 | 
					 | 
				
			||||||
    from the png_struct. This makes no practical difference to the internal
 | 
					 | 
				
			||||||
    code.
 | 
					 | 
				
			||||||
  A serious bug in the pngvalid internal routine 'standard_display_init' has
 | 
					 | 
				
			||||||
    been fixed - this failed to initialize the red channel and accidentally
 | 
					 | 
				
			||||||
    initialized the alpha channel twice.
 | 
					 | 
				
			||||||
  Changed png_struct jmp_buf member name from png_jmpbuf to tmp_jmpbuf to
 | 
					 | 
				
			||||||
    avoid a clash with the png_jmpbuf macro on some platforms.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.3beta05 [May 6, 2011]
 | 
					 | 
				
			||||||
  Added appropriate feature test macros to ensure libpng sees the correct API
 | 
					 | 
				
			||||||
   _POSIX_SOURCE is defined in pngpriv.h, pngtest.c and pngvalid.c to ensure
 | 
					 | 
				
			||||||
    that POSIX conformant systems disable non-POSIX APIs.  _ISOC99_SOURCE is
 | 
					 | 
				
			||||||
    defined in pngpriv.h to obtain the ISO C99 snprintf definition, when
 | 
					 | 
				
			||||||
    available.
 | 
					 | 
				
			||||||
  Removed png_snprintf and added formatted warning messages.  This change adds
 | 
					 | 
				
			||||||
    internal APIs to allow png_warning messages to have parameters without
 | 
					 | 
				
			||||||
    requiring the host OS to implement snprintf.  As a side effect the
 | 
					 | 
				
			||||||
    dependency of the tIME-supporting RFC1132 code on stdio is removed and
 | 
					 | 
				
			||||||
    PNG_NO_WARNINGS does actually work now.
 | 
					 | 
				
			||||||
  Added PNG_WRITE_OPTIMIZE_CMF_SUPPORTED macro to make the zlib "CMF" byte
 | 
					 | 
				
			||||||
    optimization configureable.
 | 
					 | 
				
			||||||
  IDAT compression failed if preceded by a compressed text chunk (bug
 | 
					 | 
				
			||||||
    introduced in libpng-1.5.3beta01-02).  This was because the attempt to
 | 
					 | 
				
			||||||
    reset the zlib stream in png_write_IDAT happened after the first IDAT
 | 
					 | 
				
			||||||
    chunk had been deflated - much too late.  In this change internal
 | 
					 | 
				
			||||||
    functions were added to claim/release the z_stream and, hopefully, make
 | 
					 | 
				
			||||||
    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 8, 2011]
 | 
					 | 
				
			||||||
  Removed the -D_ALL_SOURCE from definitions for AIX in CMakeLists.txt
 | 
					 | 
				
			||||||
  Implemented premultiplied alpha support: png_set_alpha_mode API
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.3beta07 [May 11, 2011]
 | 
					 | 
				
			||||||
  Added expand_16 support to the high level interface.
 | 
					 | 
				
			||||||
  Added named value and 'flag' gamma support to png_set_gamma.  Made a minor
 | 
					 | 
				
			||||||
    change from the previous (unreleased) ABI/API to hide the exact value used
 | 
					 | 
				
			||||||
    for Macs - it's not a good idea to embed this in the ABI!
 | 
					 | 
				
			||||||
  Moved macro definitions for PNG_HAVE_IHDR, PNG_HAVE_PLTE, and PNG_AFTER_IDAT
 | 
					 | 
				
			||||||
    from pngpriv.h to png.h because they must be visible to applications
 | 
					 | 
				
			||||||
    that call png_set_unknown_chunks().
 | 
					 | 
				
			||||||
  Check for up->location !PNG_AFTER_IDAT when writing unknown chunks
 | 
					 | 
				
			||||||
    before IDAT.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.3beta08 [May 16, 2011]
 | 
					 | 
				
			||||||
  Improved "pngvalid --speed" to exclude more of pngvalid from the time.
 | 
					 | 
				
			||||||
  Documented png_set_alpha_mode(), other changes in libpng.3/libpng-manual.txt
 | 
					 | 
				
			||||||
  The cHRM chunk now sets the defaults for png_set_rgb_to_gray() (when negative
 | 
					 | 
				
			||||||
    parameters are supplied by the caller), while in the absence of cHRM
 | 
					 | 
				
			||||||
    sRGB/Rec 709 values are still used.
 | 
					 | 
				
			||||||
  The bKGD chunk no longer overwrites the background value set by
 | 
					 | 
				
			||||||
    png_set_background(), allowing the latter to be used before the file
 | 
					 | 
				
			||||||
    header is read. It never performed any useful function to override
 | 
					 | 
				
			||||||
    the default anyway.
 | 
					 | 
				
			||||||
  Added memory overwrite and palette image checks to pngvalid.c
 | 
					 | 
				
			||||||
    Previously palette image code was poorly checked. Since the transformation
 | 
					 | 
				
			||||||
    code has a special palette path in most cases this was a severe weakness.
 | 
					 | 
				
			||||||
  Minor cleanup and some extra checking in pngrutil.c and pngrtran.c. When
 | 
					 | 
				
			||||||
    expanding an indexed image, always expand to RGBA if transparency is
 | 
					 | 
				
			||||||
    present.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.3beta09 [May 17, 2011]
 | 
					 | 
				
			||||||
 Reversed earlier 1.5.3 change of transformation order; move png_expand_16 back.
 | 
					 | 
				
			||||||
   The change doesn't work because it requires 16-bit gamma tables when the code
 | 
					 | 
				
			||||||
   only generates 8-bit ones.  This fails silently; the libpng code just doesn't
 | 
					 | 
				
			||||||
   do any gamma correction.  Moving the tests back leaves the old, inaccurate,
 | 
					 | 
				
			||||||
   8-bit gamma calculations, but these are clearly better than none!
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.3beta10 [May 20, 2011]
 | 
					 | 
				
			||||||
  png_set_background() and png_expand_16() did not work together correctly.
 | 
					 | 
				
			||||||
    This problem is present in 1.5.2; if png_set_background is called with
 | 
					 | 
				
			||||||
    need_expand false and the matching 16 bit color libpng erroneously just
 | 
					 | 
				
			||||||
    treats it as an 8-bit color because of where png_do_expand_16 is in the
 | 
					 | 
				
			||||||
    transform list.  This simple fix reduces the supplied colour to 8-bits,
 | 
					 | 
				
			||||||
    so it gets smashed, but this is better than the current behavior.
 | 
					 | 
				
			||||||
  Added tests for expand16, more fixes for palette image tests to pngvalid.
 | 
					 | 
				
			||||||
    Corrects the code for palette image tests and disables attempts to
 | 
					 | 
				
			||||||
    validate palette colors.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.3rc01 [June 3, 2011]
 | 
					 | 
				
			||||||
  No changes.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.3rc02 [June 8, 2011]
 | 
					 | 
				
			||||||
  Fixed uninitialized memory read in png_format_buffer() (Bug report by
 | 
					 | 
				
			||||||
    Frank Busse, related to CVE-2004-0421).
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.3beta11 [June 11, 2011]
 | 
					 | 
				
			||||||
  Fixed png_handle_sCAL which is broken in 1.5; added sCAL to pngtest.png
 | 
					 | 
				
			||||||
  Revised documentation about png_set_user_limits() to say that it also affects
 | 
					 | 
				
			||||||
    png writing.
 | 
					 | 
				
			||||||
  Revised handling of png_set_user_limits() so that it can increase the
 | 
					 | 
				
			||||||
    limit beyond the PNG_USER_WIDTH|HEIGHT_MAX; previously it could only
 | 
					 | 
				
			||||||
    reduce it.
 | 
					 | 
				
			||||||
  Make the 16-to-8 scaling accurate. Dividing by 256 with no rounding is
 | 
					 | 
				
			||||||
    wrong (high by one) 25% of the time. Dividing by 257 with rounding is
 | 
					 | 
				
			||||||
    wrong in 128 out of 65536 cases. Getting the right answer all the time
 | 
					 | 
				
			||||||
    without division is easy.
 | 
					 | 
				
			||||||
  Added "_SUPPORTED" to the PNG_WRITE_CUSTOMIZE_ZTXT_COMPRESSION macro.
 | 
					 | 
				
			||||||
  Added projects/owatcom, an IDE project for OpenWatcom to replace
 | 
					 | 
				
			||||||
    scripts/makefile.watcom.  This project works with OpenWatcom 1.9. The
 | 
					 | 
				
			||||||
    IDE autogenerates appropriate makefiles (libpng.mk) for batch processing.
 | 
					 | 
				
			||||||
    The project is configurable, unlike the Visual Studio project, so long
 | 
					 | 
				
			||||||
    as the developer has an awk.
 | 
					 | 
				
			||||||
  Changed png_set_gAMA to limit the gamma value range so that the inverse
 | 
					 | 
				
			||||||
    of the stored value cannot overflow the fixed point representation,
 | 
					 | 
				
			||||||
    and changed other things OpenWatcom warns about.
 | 
					 | 
				
			||||||
  Revised pngvalid.c to test PNG_ALPHA_MODE_SUPPORTED correctly. This allows
 | 
					 | 
				
			||||||
    pngvalid to build when ALPHA_MODE is not supported, which is required if
 | 
					 | 
				
			||||||
    it is to build on libpng 1.4.
 | 
					 | 
				
			||||||
  Removed string/memory macros that are no longer used and are not
 | 
					 | 
				
			||||||
    necessarily fully supportable, particularly png_strncpy and png_snprintf.
 | 
					 | 
				
			||||||
  Added log option to pngvalid.c and attempted to improve gamma messages.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.3 [omitted]
 | 
					 | 
				
			||||||
  People found the presence of a beta release following an rc release
 | 
					 | 
				
			||||||
    to be confusing; therefore we bump the version to libpng-1.5.4beta01
 | 
					 | 
				
			||||||
    and there will be no libpng-1.5.3 release.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.4beta01 [June 14, 2011]
 | 
					 | 
				
			||||||
  Made it possible to undefine PNG_READ_16_TO_8_ACCURATE_SCALE_SUPPORTED
 | 
					 | 
				
			||||||
    to get the same (inaccurate) output as libpng-1.5.2 and earlier.
 | 
					 | 
				
			||||||
  Moved definitions of PNG_HAVE_IHDR, PNG_AFTER_IDAT, and PNG_HAVE_PLTE
 | 
					 | 
				
			||||||
    outside of an unknown-chunk block in png.h because they are also
 | 
					 | 
				
			||||||
    needed for other uses.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.4beta02 [June 14, 2011]
 | 
					 | 
				
			||||||
  Fixed and clarified LEGACY 16-to-8 scaling code.
 | 
					 | 
				
			||||||
  Added png_set_chop_16() API, to match inaccurate results from previous
 | 
					 | 
				
			||||||
    libpng versions.
 | 
					 | 
				
			||||||
  Removed the ACCURATE and LEGACY options (they are no longer useable)
 | 
					 | 
				
			||||||
  Use the old scaling method for background if png_set_chop_16() was
 | 
					 | 
				
			||||||
    called.
 | 
					 | 
				
			||||||
  Made png_set_chop_16() API removeable with PNG_NO_READ_CHOP_16_TO_8_SUPPORTED
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.4beta03 [June 15, 2011]
 | 
					 | 
				
			||||||
  Fixed a problem in png_do_expand_palette() exposed by optimization in
 | 
					 | 
				
			||||||
    1.5.3beta06
 | 
					 | 
				
			||||||
  Also removed a spurious and confusing "trans" member ("trans") from png_info.
 | 
					 | 
				
			||||||
  The palette expand optimization prevented expansion to an intermediate RGBA
 | 
					 | 
				
			||||||
    form if tRNS was present but alpha was marked to be stripped; this exposed
 | 
					 | 
				
			||||||
    a check for tRNS in png_do_expand_palette() which is inconsistent with the
 | 
					 | 
				
			||||||
    code elsewhere in libpng.
 | 
					 | 
				
			||||||
  Correction to the expand_16 code; removed extra instance of
 | 
					 | 
				
			||||||
    png_set_scale_16_to_8 from pngpriv.h
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.4beta04 [June 16, 2011]
 | 
					 | 
				
			||||||
  Added a missing "#ifdef PNG_READ_BACKGROUND_SUPPORTED/#endif" in pngrtran.c
 | 
					 | 
				
			||||||
  Added PNG_TRANSFORM_CHOP_16 to the high-level read transforms.
 | 
					 | 
				
			||||||
  Made PNG_READ_16_TO_8_ACCURATE_SCALE configurable again.  If this is
 | 
					 | 
				
			||||||
    not enabled, png_set_strip_16() and png_do_scale_16_to_8() aren't built.
 | 
					 | 
				
			||||||
  Revised contrib/visupng, gregbook, and pngminim to demonstrate chop_16_to_8
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.4beta05 [June 16, 2011]
 | 
					 | 
				
			||||||
  Renamed png_set_strip_16() to png_set_scale_16() and renamed
 | 
					 | 
				
			||||||
    png_set_chop_16() to png_set_strip(16) in an attempt to minimize the
 | 
					 | 
				
			||||||
    behavior changes between libpng14 and libpng15.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.4beta06 [June 18, 2011]
 | 
					 | 
				
			||||||
  Fixed new bug that was causing both strip_16 and scale_16 to be applied.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.4beta07 [June 19, 2011]
 | 
					 | 
				
			||||||
  Fixed pngvalid, simplified macros, added checking for 0 in sCAL.
 | 
					 | 
				
			||||||
    The ACCURATE scale macro is no longer defined in 1.5 - call the
 | 
					 | 
				
			||||||
    png_scale_16_to_8 API.  Made sure that PNG_READ_16_TO_8 is still defined
 | 
					 | 
				
			||||||
    if the png_strip_16_to_8 API is present.  png_check_fp_number now
 | 
					 | 
				
			||||||
    maintains some state so that positive, negative and zero values are
 | 
					 | 
				
			||||||
    identified.  sCAL uses these to be strictly spec conformant.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.4beta08 [June 23, 2011]
 | 
					 | 
				
			||||||
  Fixed pngvalid if ACCURATE_SCALE is defined.
 | 
					 | 
				
			||||||
  Updated scripts/pnglibconf.h.prebuilt.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.4rc01 [June 30, 2011]
 | 
					 | 
				
			||||||
  Define PNG_ALLOCATED to "restrict" only if MSC_VER >= 1400.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Version 1.5.4 [July 8, 2011]
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
Send comments/corrections/commendations to png-mng-implement at lists.sf.net:
 | 
					Send comments/corrections/commendations to png-mng-implement at lists.sf.net:
 | 
				
			||||||
(subscription required; visit
 | 
					(subscription required; visit
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										6
									
								
								CHANGES
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								CHANGES
									
									
									
									
									
								
							@ -3506,7 +3506,11 @@ Version 1.5.4beta08 [June 23, 2011]
 | 
				
			|||||||
Version 1.5.4rc01 [June 30, 2011]
 | 
					Version 1.5.4rc01 [June 30, 2011]
 | 
				
			||||||
  Define PNG_ALLOCATED to "restrict" only if MSC_VER >= 1400.
 | 
					  Define PNG_ALLOCATED to "restrict" only if MSC_VER >= 1400.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Version 1.5.4 [July 8, 2011]
 | 
					Version 1.5.4 [July 7, 2011]
 | 
				
			||||||
 | 
					  No changes.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Version 1.5.5beta01 [July 10, 2011]
 | 
				
			||||||
 | 
					  Fixed some typos in the manual.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
 | 
					Send comments/corrections/commendations to png-mng-implement at lists.sf.net
 | 
				
			||||||
(subscription required; visit
 | 
					(subscription required; visit
 | 
				
			||||||
 | 
				
			|||||||
@ -1,6 +1,6 @@
 | 
				
			|||||||
libpng-manual.txt - A description on how to use and modify libpng
 | 
					libpng-manual.txt - A description on how to use and modify libpng
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 libpng version 1.5.5beta01 - July 8, 2011
 | 
					 libpng version 1.5.5beta01 - July 10, 2011
 | 
				
			||||||
 Updated and distributed by Glenn Randers-Pehrson
 | 
					 Updated and distributed by Glenn Randers-Pehrson
 | 
				
			||||||
 <glennrp at users.sourceforge.net>
 | 
					 <glennrp at users.sourceforge.net>
 | 
				
			||||||
 Copyright (c) 1998-2011 Glenn Randers-Pehrson
 | 
					 Copyright (c) 1998-2011 Glenn Randers-Pehrson
 | 
				
			||||||
@ -11,7 +11,7 @@ libpng-manual.txt - A description on how to use and modify libpng
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 Based on:
 | 
					 Based on:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 libpng versions 0.97, January 1998, through 1.5.5beta01 - July 8, 2011
 | 
					 libpng versions 0.97, January 1998, through 1.5.5beta01 - July 10, 2011
 | 
				
			||||||
 Updated and distributed by Glenn Randers-Pehrson
 | 
					 Updated and distributed by Glenn Randers-Pehrson
 | 
				
			||||||
 Copyright (c) 1998-2011 Glenn Randers-Pehrson
 | 
					 Copyright (c) 1998-2011 Glenn Randers-Pehrson
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -838,7 +838,7 @@ format produced by libpng to always have 8-bit or 16-bit components and then
 | 
				
			|||||||
store the color as an 8-bit or 16-bit color as appropriate.  The color contains
 | 
					store the color as an 8-bit or 16-bit color as appropriate.  The color contains
 | 
				
			||||||
separate gray and RGB component values, so you can let libpng produce gray or
 | 
					separate gray and RGB component values, so you can let libpng produce gray or
 | 
				
			||||||
RGB output according to the input format, but low bit depth grayscale images
 | 
					RGB output according to the input format, but low bit depth grayscale images
 | 
				
			||||||
must always be converted to at least 8-bit format.  (Even low low bit depth
 | 
					must always be converted to at least 8-bit format.  (Even though low bit depth
 | 
				
			||||||
grayscale images can't have an alpha channel they can have a transparent
 | 
					grayscale images can't have an alpha channel they can have a transparent
 | 
				
			||||||
color!)
 | 
					color!)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -977,7 +977,7 @@ provided by an earlier call to png_set_gamma or png_set_alpha_mode.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
2) Prior to libpng-1.5.4 the background color from a bKGd chunk.  This
 | 
					2) Prior to libpng-1.5.4 the background color from a bKGd chunk.  This
 | 
				
			||||||
damages the information provided by an earlier call to png_set_background
 | 
					damages the information provided by an earlier call to png_set_background
 | 
				
			||||||
resulting in expected behavior.  Libpng-1.5.4 no longer does this.
 | 
					resulting in unexpected behavior.  Libpng-1.5.4 no longer does this.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
3) The number of significant bits in each component value.  Libpng uses this to
 | 
					3) The number of significant bits in each component value.  Libpng uses this to
 | 
				
			||||||
optimize gamma handling by reducing the internal lookup table sizes.
 | 
					optimize gamma handling by reducing the internal lookup table sizes.
 | 
				
			||||||
@ -1173,7 +1173,8 @@ pointer into the info_ptr is returned for any complex types.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    png_get_bKGD(png_ptr, info_ptr, &background);
 | 
					    png_get_bKGD(png_ptr, info_ptr, &background);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    background     - background color (PNG_VALID_bKGD)
 | 
					    background     - background color (of type
 | 
				
			||||||
 | 
					                     png_color_16p) (PNG_VALID_bKGD)
 | 
				
			||||||
                     valid 16-bit red, green and blue
 | 
					                     valid 16-bit red, green and blue
 | 
				
			||||||
                     values, regardless of color_type
 | 
					                     values, regardless of color_type
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -1648,21 +1649,20 @@ If the PNG file contains a bKGD chunk (PNG_INFO_bKGD valid),
 | 
				
			|||||||
you may use this color, or supply another color more suitable for
 | 
					you may use this color, or supply another color more suitable for
 | 
				
			||||||
the current display (e.g., the background color from a web page).  You
 | 
					the current display (e.g., the background color from a web page).  You
 | 
				
			||||||
need to tell libpng how the color is represented, both the format of the
 | 
					need to tell libpng how the color is represented, both the format of the
 | 
				
			||||||
component values in the color (the number of bits) and the gamme encoding of the
 | 
					component values in the color (the number of bits) and the gamma encoding of the
 | 
				
			||||||
color.  The function takes two arguments, background_gamma_mode and need_expand
 | 
					color.  The function takes two arguments, background_gamma_mode and need_expand
 | 
				
			||||||
to convey this information, however only two combinations are like to be useful:
 | 
					to convey this information, however only two combinations are likely to be
 | 
				
			||||||
 | 
					useful:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    png_color_16 my_background;
 | 
					    png_color_16p image_background, my_background;
 | 
				
			||||||
    png_color_16p image_background;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (png_get_bKGD(png_ptr, info_ptr, &image_background))
 | 
					    if (png_get_bKGD(png_ptr, info_ptr, &image_background))
 | 
				
			||||||
       png_set_background(png_ptr, image_background,
 | 
					       png_set_background(png_ptr, image_background,
 | 
				
			||||||
           PNG_BACKGROUND_GAMMA_FILE, 1/*needs to be expanded*/, 1);
 | 
					           PNG_BACKGROUND_GAMMA_FILE, 1/*needs to be expanded*/, 1);
 | 
				
			||||||
    else
 | 
					    else
 | 
				
			||||||
       png_set_background(png_ptr, &my_background,
 | 
					       png_set_background(png_ptr, info_ptr, my_background,
 | 
				
			||||||
           PNG_BACKGROUND_GAMMA_SCREEN, 0/*do not expand*/, 1);
 | 
					           PNG_BACKGROUND_GAMMA_SCREEN, 0/*do not expand*/, 1);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
The second call was described above - my_background is in the format of the
 | 
					The second call was described above - my_background is in the format of the
 | 
				
			||||||
final, display, output produced by libpng.  Because you now know the format of
 | 
					final, display, output produced by libpng.  Because you now know the format of
 | 
				
			||||||
the PNG it is possible to avoid the need to choose either 8-bit or 16-bit
 | 
					the PNG it is possible to avoid the need to choose either 8-bit or 16-bit
 | 
				
			||||||
@ -2719,7 +2719,8 @@ width, height, bit_depth, and color_type must be the same in each call.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    png_set_bKGD(png_ptr, info_ptr, background);
 | 
					    png_set_bKGD(png_ptr, info_ptr, background);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    background     - background color (PNG_VALID_bKGD)
 | 
					    background     - background color (of type
 | 
				
			||||||
 | 
					                     png_color_16p) (PNG_VALID_bKGD)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    png_set_text(png_ptr, info_ptr, text_ptr, num_text);
 | 
					    png_set_text(png_ptr, info_ptr, text_ptr, num_text);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -4424,7 +4425,7 @@ Other rules can be inferred by inspecting the libpng source.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
XIV. Y2K Compliance in libpng
 | 
					XIV. Y2K Compliance in libpng
 | 
				
			||||||
 | 
					
 | 
				
			||||||
July 8, 2011
 | 
					July 10, 2011
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Since the PNG Development group is an ad-hoc body, we can't make
 | 
					Since the PNG Development group is an ad-hoc body, we can't make
 | 
				
			||||||
an official declaration.
 | 
					an official declaration.
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										35
									
								
								libpng.3
									
									
									
									
									
								
							
							
						
						
									
										35
									
								
								libpng.3
									
									
									
									
									
								
							@ -1,4 +1,4 @@
 | 
				
			|||||||
.TH LIBPNG 3 "July 8, 2011"
 | 
					.TH LIBPNG 3 "July 10, 2011"
 | 
				
			||||||
.SH NAME
 | 
					.SH NAME
 | 
				
			||||||
libpng \- Portable Network Graphics (PNG) Reference Library 1.5.5beta01
 | 
					libpng \- Portable Network Graphics (PNG) Reference Library 1.5.5beta01
 | 
				
			||||||
.SH SYNOPSIS
 | 
					.SH SYNOPSIS
 | 
				
			||||||
@ -955,7 +955,7 @@ Following is a copy of the libpng-manual.txt file that accompanies libpng.
 | 
				
			|||||||
.SH LIBPNG.TXT
 | 
					.SH LIBPNG.TXT
 | 
				
			||||||
libpng-manual.txt - A description on how to use and modify libpng
 | 
					libpng-manual.txt - A description on how to use and modify libpng
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 libpng version 1.5.5beta01 - July 8, 2011
 | 
					 libpng version 1.5.5beta01 - July 10, 2011
 | 
				
			||||||
 Updated and distributed by Glenn Randers-Pehrson
 | 
					 Updated and distributed by Glenn Randers-Pehrson
 | 
				
			||||||
 <glennrp at users.sourceforge.net>
 | 
					 <glennrp at users.sourceforge.net>
 | 
				
			||||||
 Copyright (c) 1998-2011 Glenn Randers-Pehrson
 | 
					 Copyright (c) 1998-2011 Glenn Randers-Pehrson
 | 
				
			||||||
@ -966,7 +966,7 @@ libpng-manual.txt - A description on how to use and modify libpng
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 Based on:
 | 
					 Based on:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 libpng versions 0.97, January 1998, through 1.5.5beta01 - July 8, 2011
 | 
					 libpng versions 0.97, January 1998, through 1.5.5beta01 - July 10, 2011
 | 
				
			||||||
 Updated and distributed by Glenn Randers-Pehrson
 | 
					 Updated and distributed by Glenn Randers-Pehrson
 | 
				
			||||||
 Copyright (c) 1998-2011 Glenn Randers-Pehrson
 | 
					 Copyright (c) 1998-2011 Glenn Randers-Pehrson
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -1793,7 +1793,7 @@ format produced by libpng to always have 8-bit or 16-bit components and then
 | 
				
			|||||||
store the color as an 8-bit or 16-bit color as appropriate.  The color contains
 | 
					store the color as an 8-bit or 16-bit color as appropriate.  The color contains
 | 
				
			||||||
separate gray and RGB component values, so you can let libpng produce gray or
 | 
					separate gray and RGB component values, so you can let libpng produce gray or
 | 
				
			||||||
RGB output according to the input format, but low bit depth grayscale images
 | 
					RGB output according to the input format, but low bit depth grayscale images
 | 
				
			||||||
must always be converted to at least 8-bit format.  (Even low low bit depth
 | 
					must always be converted to at least 8-bit format.  (Even though low bit depth
 | 
				
			||||||
grayscale images can't have an alpha channel they can have a transparent
 | 
					grayscale images can't have an alpha channel they can have a transparent
 | 
				
			||||||
color!)
 | 
					color!)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -1932,7 +1932,7 @@ provided by an earlier call to png_set_gamma or png_set_alpha_mode.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
2) Prior to libpng-1.5.4 the background color from a bKGd chunk.  This
 | 
					2) Prior to libpng-1.5.4 the background color from a bKGd chunk.  This
 | 
				
			||||||
damages the information provided by an earlier call to png_set_background
 | 
					damages the information provided by an earlier call to png_set_background
 | 
				
			||||||
resulting in expected behavior.  Libpng-1.5.4 no longer does this.
 | 
					resulting in unexpected behavior.  Libpng-1.5.4 no longer does this.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
3) The number of significant bits in each component value.  Libpng uses this to
 | 
					3) The number of significant bits in each component value.  Libpng uses this to
 | 
				
			||||||
optimize gamma handling by reducing the internal lookup table sizes.
 | 
					optimize gamma handling by reducing the internal lookup table sizes.
 | 
				
			||||||
@ -2128,7 +2128,8 @@ pointer into the info_ptr is returned for any complex types.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    png_get_bKGD(png_ptr, info_ptr, &background);
 | 
					    png_get_bKGD(png_ptr, info_ptr, &background);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    background     - background color (PNG_VALID_bKGD)
 | 
					    background     - background color (of type
 | 
				
			||||||
 | 
					                     png_color_16p) (PNG_VALID_bKGD)
 | 
				
			||||||
                     valid 16-bit red, green and blue
 | 
					                     valid 16-bit red, green and blue
 | 
				
			||||||
                     values, regardless of color_type
 | 
					                     values, regardless of color_type
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -2603,21 +2604,20 @@ If the PNG file contains a bKGD chunk (PNG_INFO_bKGD valid),
 | 
				
			|||||||
you may use this color, or supply another color more suitable for
 | 
					you may use this color, or supply another color more suitable for
 | 
				
			||||||
the current display (e.g., the background color from a web page).  You
 | 
					the current display (e.g., the background color from a web page).  You
 | 
				
			||||||
need to tell libpng how the color is represented, both the format of the
 | 
					need to tell libpng how the color is represented, both the format of the
 | 
				
			||||||
component values in the color (the number of bits) and the gamme encoding of the
 | 
					component values in the color (the number of bits) and the gamma encoding of the
 | 
				
			||||||
color.  The function takes two arguments, background_gamma_mode and need_expand
 | 
					color.  The function takes two arguments, background_gamma_mode and need_expand
 | 
				
			||||||
to convey this information, however only two combinations are like to be useful:
 | 
					to convey this information, however only two combinations are likely to be
 | 
				
			||||||
 | 
					useful:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    png_color_16 my_background;
 | 
					    png_color_16p image_background, my_background;
 | 
				
			||||||
    png_color_16p image_background;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (png_get_bKGD(png_ptr, info_ptr, &image_background))
 | 
					    if (png_get_bKGD(png_ptr, info_ptr, &image_background))
 | 
				
			||||||
       png_set_background(png_ptr, image_background,
 | 
					       png_set_background(png_ptr, image_background,
 | 
				
			||||||
           PNG_BACKGROUND_GAMMA_FILE, 1/*needs to be expanded*/, 1);
 | 
					           PNG_BACKGROUND_GAMMA_FILE, 1/*needs to be expanded*/, 1);
 | 
				
			||||||
    else
 | 
					    else
 | 
				
			||||||
       png_set_background(png_ptr, &my_background,
 | 
					       png_set_background(png_ptr, info_ptr, my_background,
 | 
				
			||||||
           PNG_BACKGROUND_GAMMA_SCREEN, 0/*do not expand*/, 1);
 | 
					           PNG_BACKGROUND_GAMMA_SCREEN, 0/*do not expand*/, 1);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
The second call was described above - my_background is in the format of the
 | 
					The second call was described above - my_background is in the format of the
 | 
				
			||||||
final, display, output produced by libpng.  Because you now know the format of
 | 
					final, display, output produced by libpng.  Because you now know the format of
 | 
				
			||||||
the PNG it is possible to avoid the need to choose either 8-bit or 16-bit
 | 
					the PNG it is possible to avoid the need to choose either 8-bit or 16-bit
 | 
				
			||||||
@ -3674,7 +3674,8 @@ width, height, bit_depth, and color_type must be the same in each call.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    png_set_bKGD(png_ptr, info_ptr, background);
 | 
					    png_set_bKGD(png_ptr, info_ptr, background);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    background     - background color (PNG_VALID_bKGD)
 | 
					    background     - background color (of type
 | 
				
			||||||
 | 
					                     png_color_16p) (PNG_VALID_bKGD)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    png_set_text(png_ptr, info_ptr, text_ptr, num_text);
 | 
					    png_set_text(png_ptr, info_ptr, text_ptr, num_text);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -5379,7 +5380,7 @@ Other rules can be inferred by inspecting the libpng source.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
.SH XIV. Y2K Compliance in libpng
 | 
					.SH XIV. Y2K Compliance in libpng
 | 
				
			||||||
 | 
					
 | 
				
			||||||
July 8, 2011
 | 
					July 10, 2011
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Since the PNG Development group is an ad-hoc body, we can't make
 | 
					Since the PNG Development group is an ad-hoc body, we can't make
 | 
				
			||||||
an official declaration.
 | 
					an official declaration.
 | 
				
			||||||
@ -5637,7 +5638,7 @@ possible without all of you.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
Thanks to Frank J. T. Wojcik for helping with the documentation.
 | 
					Thanks to Frank J. T. Wojcik for helping with the documentation.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Libpng version 1.5.5beta01 - July 8, 2011:
 | 
					Libpng version 1.5.5beta01 - July 10, 2011:
 | 
				
			||||||
Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
 | 
					Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
 | 
				
			||||||
Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
 | 
					Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -5660,7 +5661,7 @@ this sentence.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
This code is released under the libpng license.
 | 
					This code is released under the libpng license.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libpng versions 1.2.6, August 15, 2004, through 1.5.5beta01, July 8, 2011, are
 | 
					libpng versions 1.2.6, August 15, 2004, through 1.5.5beta01, July 10, 2011, are
 | 
				
			||||||
Copyright (c) 2004,2006-2007 Glenn Randers-Pehrson, and are
 | 
					Copyright (c) 2004,2006-2007 Glenn Randers-Pehrson, and are
 | 
				
			||||||
distributed according to the same disclaimer and license as libpng-1.2.5
 | 
					distributed according to the same disclaimer and license as libpng-1.2.5
 | 
				
			||||||
with the following individual added to the list of Contributing Authors
 | 
					with the following individual added to the list of Contributing Authors
 | 
				
			||||||
@ -5759,7 +5760,7 @@ certification mark of the Open Source Initiative.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
Glenn Randers-Pehrson
 | 
					Glenn Randers-Pehrson
 | 
				
			||||||
glennrp at users.sourceforge.net
 | 
					glennrp at users.sourceforge.net
 | 
				
			||||||
July 8, 2011
 | 
					July 10, 2011
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.\" end of man page
 | 
					.\" end of man page
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user