From: Jim B. <j....@th...> - 2009-06-29 17:55:17
|
John Bowler wrote: > I think the threshold test should be moved into png_build_gamma_table > (not png_set_gamma and not png_init_read_transformations itself) and > the code should be checked to ensure that the table isn't referenced > if it hasn't > been set. It's easier to do the optimizations at the last possible > moment rather than messing with the 'transformations' flags. So it seems there are basically three possibilities: 1) The "full fix" that you are proposing, i.e. libpng assumes default gamma values if png_set_gamma is not called, and always does gamma correction unless it determines that no correction is needed. 2) The partial fix that I originally proposed, i.e. have png_init_read_transformations remove the PNG_GAMMA transformation when there is no background colour and the file/screen gammas are reciprocal. 3) Just leave things as they are. What does everybody think? - Jim |