[devel] Fix more inconsistencies from the swap of 16_TO_8 APIs.

pngvalid still fails.
This commit is contained in:
Glenn Randers-Pehrson
2011-06-17 23:07:16 -05:00
parent 24145c8869
commit 6da2f2d92a
3 changed files with 12 additions and 9 deletions

4
png.h
View File

@@ -1426,12 +1426,12 @@ PNG_FIXED_EXPORT(215, void, png_set_background_fixed, (png_structp png_ptr,
#ifdef PNG_READ_16_TO_8_SUPPORTED #ifdef PNG_READ_16_TO_8_SUPPORTED
# ifdef PNG_READ_SCALE_16_TO_8_SUPPORTED # ifdef PNG_READ_SCALE_16_TO_8_SUPPORTED
/* Scale a 16-bit depth file down to 8-bit, accurately. */ /* Scale a 16-bit depth file down to 8-bit, accurately. */
PNG_EXPORT(48, void, png_set_scale_16, (png_structp png_ptr)); PNG_EXPORT(229, void, png_set_scale_16, (png_structp png_ptr));
# endif # endif
# ifdef PNG_READ_STRIP_16_TO_8_SUPPORTED # ifdef PNG_READ_STRIP_16_TO_8_SUPPORTED
/* Strip the second byte of information from a 16-bit depth file. */ /* Strip the second byte of information from a 16-bit depth file. */
PNG_EXPORT(229, void, png_set_strip_16, (png_structp png_ptr)); PNG_EXPORT(48, void, png_set_strip_16, (png_structp png_ptr));
# endif # endif
#endif #endif

View File

@@ -1289,18 +1289,21 @@ png_read_png(png_structp png_ptr, png_infop info_ptr,
#ifdef PNG_READ_16_TO_8_SUPPORTED #ifdef PNG_READ_16_TO_8_SUPPORTED
/* Tell libpng to strip 16-bit/color files down to 8 bits per color. /* Tell libpng to strip 16-bit/color files down to 8 bits per color.
*/ */
# ifdef PNG_READ_16_TO_8_ACCURATE_SCALE_SUPPORTED # ifdef PNG_READ_SCALE_16_TO_8_SUPPORTED
if (transforms & PNG_TRANSFORM_SCALE_16) if (transforms & PNG_TRANSFORM_SCALE_16)
png_set_scale_16(png_ptr); png_set_scale_16(png_ptr);
# ifdef PNG_READ_STRIP_16_TO_8_SUPPORTED
else
# endif
# endif # endif
# ifdef PNG_READ_STRIP_16_TO_8_SUPPORTED # ifdef PNG_READ_STRIP_16_TO_8_SUPPORTED
/* Added at libpng-1.5.4. "strip_16" produces the same result that it /* Added at libpng-1.5.4. "strip_16" produces the same result that it
* did in earlier versions, while "scale_16" is now more accurate. * did in earlier versions, while "scale_16" is now more accurate.
*/ */
else
if (transforms & PNG_TRANSFORM_STRIP_16) if (transforms & PNG_TRANSFORM_STRIP_16)
png_set_strip_16(png_ptr); png_set_strip_16(png_ptr);
#endif # endif
#endif #endif
#ifdef PNG_READ_STRIP_ALPHA_SUPPORTED #ifdef PNG_READ_STRIP_ALPHA_SUPPORTED

View File

@@ -234,4 +234,4 @@ EXPORTS
png_set_text_compression_method @226 png_set_text_compression_method @226
png_set_alpha_mode @227 png_set_alpha_mode @227
png_set_alpha_mode_fixed @228 png_set_alpha_mode_fixed @228
png_set_chop_16 @229 png_set_scale_16 @229