[devel] Minor revision of commentary about png_set_alpha_mode().
This commit is contained in:
parent
44e26d4149
commit
d768d103cf
2
ANNOUNCE
2
ANNOUNCE
@ -102,7 +102,7 @@ Version 1.5.3beta06 [May 8, 2011]
|
|||||||
Implemented premultiplied alpha support: png_set_alpha_mode API
|
Implemented premultiplied alpha support: png_set_alpha_mode API
|
||||||
|
|
||||||
Version 1.5.3beta07 [May 9, 2011]
|
Version 1.5.3beta07 [May 9, 2011]
|
||||||
Added expand_16 suppport to the high level interface.
|
Added expand_16 support to the high level interface.
|
||||||
|
|
||||||
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
|
||||||
|
2
CHANGES
2
CHANGES
@ -3361,7 +3361,7 @@ Version 1.5.3beta06 [May 8, 2011]
|
|||||||
Implemented premultiplied alpha support: png_set_alpha_mode API
|
Implemented premultiplied alpha support: png_set_alpha_mode API
|
||||||
|
|
||||||
Version 1.5.3beta07 [May 9, 2011]
|
Version 1.5.3beta07 [May 9, 2011]
|
||||||
Added expand_16 suppport to the high level interface.
|
Added expand_16 support to the high level interface.
|
||||||
|
|
||||||
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
|
||||||
|
18
png.h
18
png.h
@ -1084,7 +1084,7 @@ PNG_EXPORT(29, void, png_set_tRNS_to_alpha, (png_structp png_ptr));
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef PNG_READ_EXPAND_16_SUPPORTED
|
#ifdef PNG_READ_EXPAND_16_SUPPORTED
|
||||||
/* Expand to 16 bit channels, forces conversion of palette to RGB and expansion
|
/* Expand to 16-bit channels, forces conversion of palette to RGB and expansion
|
||||||
* of a tRNS chunk if present.
|
* of a tRNS chunk if present.
|
||||||
*/
|
*/
|
||||||
PNG_EXPORT(221, void, png_set_expand_16, (png_structp png_ptr));
|
PNG_EXPORT(221, void, png_set_expand_16, (png_structp png_ptr));
|
||||||
@ -1136,11 +1136,11 @@ PNG_EXPORT(35, void, png_build_grayscale_palette, (int bit_depth,
|
|||||||
* storing color channel values that have been scaled by the alpha. The
|
* storing color channel values that have been scaled by the alpha. The
|
||||||
* advantage is that the color channels can be resampled (the image can be
|
* advantage is that the color channels can be resampled (the image can be
|
||||||
* scaled) in this form. The disadvantage is that normal practice is to store
|
* scaled) in this form. The disadvantage is that normal practice is to store
|
||||||
* linear, not (gamma) encoded, values and this requires 16 bit channels for
|
* linear, not (gamma) encoded, values and this requires 16-bit channels for
|
||||||
* still images rather than the 8 bit channels that are just about sufficient if
|
* still images rather than the 8-bit channels that are just about sufficient if
|
||||||
* gamma encoding is used. In addition all non-transparent pixel values,
|
* gamma encoding is used. In addition all non-transparent pixel values,
|
||||||
* including completely opaque ones, must be gamma encoded to produce the final
|
* including completely opaque ones, must be gamma encoded to produce the final
|
||||||
* image. This is the 'STANDARD', 'ASSOCIATED' or 'PREMULTIPLIED' format (the
|
* image. This is the 'STANDARD', 'ASSOCIATED' or 'PREMULTIPLIED' mode (the
|
||||||
* latter being the two common names for associated alpha color channels.)
|
* latter being the two common names for associated alpha color channels.)
|
||||||
*
|
*
|
||||||
* Since it is not necessary to perform arithmetic on opaque color values so
|
* Since it is not necessary to perform arithmetic on opaque color values so
|
||||||
@ -1149,10 +1149,10 @@ PNG_EXPORT(35, void, png_build_grayscale_palette, (int bit_depth,
|
|||||||
* the PNG format (adjusted for the output color space) while storing partially
|
* the PNG format (adjusted for the output color space) while storing partially
|
||||||
* opaque pixels in the standard, linear, format. The accuracy required for
|
* opaque pixels in the standard, linear, format. The accuracy required for
|
||||||
* standard alpha composition is relatively low, because the pixels are
|
* standard alpha composition is relatively low, because the pixels are
|
||||||
* isolated, therefore typically the accuracy loss in storing 8 bit linear
|
* 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
|
* values is acceptable. (This is not true if the alpha channel is used to
|
||||||
* simulate transparency over large areas - use 16 bits or the PNG format in
|
* simulate transparency over large areas - use 16 bits or the PNG mode in
|
||||||
* this case!) This is the 'OPTIMIZED' format. For this format a pixel is
|
* this case!) This is the 'OPTIMIZED' mode. For this mode a pixel is
|
||||||
* treated as opaque only if the alpha value is equal to the maximum value.
|
* treated as opaque only if the alpha value is equal to the maximum value.
|
||||||
*
|
*
|
||||||
* The final choice is to gamma encode the alpha channel as well. This is
|
* The final choice is to gamma encode the alpha channel as well. This is
|
||||||
@ -1163,7 +1163,7 @@ PNG_EXPORT(35, void, png_build_grayscale_palette, (int bit_depth,
|
|||||||
* opaque areas of the composited PNG image because of arithmetic overflow.
|
* opaque areas of the composited PNG image because of arithmetic overflow.
|
||||||
*
|
*
|
||||||
* The API function png_set_alpha_mode specifies which of these choices to use
|
* The API function png_set_alpha_mode specifies which of these choices to use
|
||||||
* with a enumerated 'mode' value and the gamma of the required output:
|
* with an enumerated 'mode' value and the gamma of the required output:
|
||||||
*/
|
*/
|
||||||
#define PNG_ALPHA_PNG 0 /* according to the PNG standard */
|
#define PNG_ALPHA_PNG 0 /* according to the PNG standard */
|
||||||
#define PNG_ALPHA_STANDARD 1 /* according to Porter/Duff */
|
#define PNG_ALPHA_STANDARD 1 /* according to Porter/Duff */
|
||||||
@ -1277,7 +1277,7 @@ PNG_FIXED_EXPORT(228, void, png_set_alpha_mode_fixed, (png_structp png_ptr,
|
|||||||
* setting. In this case you just copy completely opaque pixels to the
|
* setting. In this case you just copy completely opaque pixels to the
|
||||||
* output. For pixels that are not completely transparent (you just skip
|
* output. For pixels that are not completely transparent (you just skip
|
||||||
* those) you do the composition math using png_composite or png_composite_16
|
* those) you do the composition math using png_composite or png_composite_16
|
||||||
* below then encode the resultant 8 or 16 bit values to match the output
|
* below then encode the resultant 8-bit or 16-bit values to match the output
|
||||||
* encoding.
|
* encoding.
|
||||||
*
|
*
|
||||||
* Other cases
|
* Other cases
|
||||||
|
Loading…
Reference in New Issue
Block a user