if (fp)
{
png_struct *png_ptr = png_create_write_struct(
PNG_LIBPNG_VER_STRING, png_error_ptr_NULL, error_fn, warning_fn);
PNG_LIBPNG_VER_STRING, NULL, error_fn, warning_fn);
if (png_ptr)
break;
}
png_destroy_write_struct(&png_ptr, png_infopp_NULL);
png_destroy_write_struct(&png_ptr, NULL);
fclose(fp);