Go to the documentation of this file.
18 #if defined(PNG_READ_SUPPORTED) || defined(PNG_WRITE_SUPPORTED)
20 #if defined(PNG_bKGD_SUPPORTED)
24 png_debug1(1,
"in %s storage function\n",
"bKGD");
25 if (png_ptr == NULL ||
info_ptr == NULL)
33 #if defined(PNG_cHRM_SUPPORTED)
34 #ifdef PNG_FLOATING_POINT_SUPPORTED
40 png_debug1(1,
"in %s storage function\n",
"cHRM");
41 if (png_ptr == NULL ||
info_ptr == NULL)
47 "Ignoring attempt to set all-zero chromaticity values");
56 "Ignoring attempt to set negative chromaticity value");
65 "Ignoring attempt to set chromaticity value exceeding 21474.83");
77 #ifdef PNG_FIXED_POINT_SUPPORTED
90 #ifdef PNG_FIXED_POINT_SUPPORTED
97 png_debug1(1,
"in %s storage function\n",
"cHRM");
98 if (png_ptr == NULL ||
info_ptr == NULL)
105 "Ignoring attempt to set all-zero chromaticity values");
114 "Ignoring attempt to set negative chromaticity value");
127 "Ignoring attempt to set chromaticity value exceeding 21474.83");
138 #ifdef PNG_FLOATING_POINT_SUPPORTED
153 #if defined(PNG_gAMA_SUPPORTED)
154 #ifdef PNG_FLOATING_POINT_SUPPORTED
159 png_debug1(1,
"in %s storage function\n",
"gAMA");
160 if (png_ptr == NULL ||
info_ptr == NULL)
166 png_warning(png_ptr,
"Limiting gamma to 21474.83");
172 #ifdef PNG_FIXED_POINT_SUPPORTED
186 png_debug1(1,
"in %s storage function\n",
"gAMA");
187 if (png_ptr == NULL ||
info_ptr == NULL)
192 png_warning(png_ptr,
"Limiting gamma to 21474.83");
199 png_warning(png_ptr,
"Setting negative gamma to zero");
205 #ifdef PNG_FLOATING_POINT_SUPPORTED
206 info_ptr->gamma = (float)(gamma/100000.);
208 #ifdef PNG_FIXED_POINT_SUPPORTED
217 #if defined(PNG_hIST_SUPPORTED)
223 png_debug1(1,
"in %s storage function\n",
"hIST");
224 if (png_ptr == NULL ||
info_ptr == NULL)
230 "Invalid palette size, hIST allocation skipped.");
234 #ifdef PNG_FREE_ME_SUPPORTED
241 if (png_ptr->hist == NULL)
243 png_warning(png_ptr,
"Insufficient memory for hIST chunk data.");
248 png_ptr->hist[
i] =
hist[
i];
255 png_ptr->flags |= PNG_FLAG_FREE_HIST;
266 png_debug1(1,
"in %s storage function\n",
"IHDR");
267 if (png_ptr == NULL ||
info_ptr == NULL)
272 png_error(png_ptr,
"Image width or height is zero in IHDR");
273 #ifdef PNG_SET_USER_LIMITS_SUPPORTED
274 if (
width > png_ptr->user_width_max ||
height > png_ptr->user_height_max)
275 png_error(png_ptr,
"image size exceeds user limits in IHDR");
278 png_error(png_ptr,
"image size exceeds user limits in IHDR");
281 png_error(png_ptr,
"Invalid image size in IHDR");
288 png_warning(png_ptr,
"Width is too large for libpng to process pixels");
293 png_error(png_ptr,
"Invalid bit depth in IHDR");
297 png_error(png_ptr,
"Invalid color type in IHDR");
303 png_error(png_ptr,
"Invalid color type/bit depth combination in IHDR");
306 png_error(png_ptr,
"Unknown interlace method in IHDR");
309 png_error(png_ptr,
"Unknown compression method in IHDR");
311 #if defined(PNG_MNG_FEATURES_SUPPORTED)
321 if ((png_ptr->mode&PNG_HAVE_PNG_SIGNATURE)&&png_ptr->mng_features_permitted)
322 png_warning(png_ptr,
"MNG features are not allowed in a PNG datastream");
327 ((png_ptr->mode&PNG_HAVE_PNG_SIGNATURE) == 0) &&
330 png_error(png_ptr,
"Unknown filter method in IHDR");
331 if (png_ptr->mode&PNG_HAVE_PNG_SIGNATURE)
332 png_warning(png_ptr,
"Invalid filter method in IHDR");
336 png_error(png_ptr,
"Unknown filter method in IHDR");
368 #if defined(PNG_oFFs_SUPPORTED)
373 png_debug1(1,
"in %s storage function\n",
"oFFs");
374 if (png_ptr == NULL ||
info_ptr == NULL)
384 #if defined(PNG_pCAL_SUPPORTED)
393 png_debug1(1,
"in %s storage function\n",
"pCAL");
394 if (png_ptr == NULL ||
info_ptr == NULL)
398 png_debug1(3,
"allocating purpose for info (%lu bytes)\n",
403 png_warning(png_ptr,
"Insufficient memory for pCAL purpose.");
408 png_debug(3,
"storing X0, X1, type, and nparams in info\n");
415 png_debug1(3,
"allocating units for info (%lu bytes)\n",
420 png_warning(png_ptr,
"Insufficient memory for pCAL units.");
429 png_warning(png_ptr,
"Insufficient memory for pCAL params.");
438 png_debug2(3,
"allocating parameter %d for info (%lu bytes)\n",
i,
443 png_warning(png_ptr,
"Insufficient memory for pCAL parameter.");
450 #ifdef PNG_FREE_ME_SUPPORTED
456 #if defined(PNG_READ_sCAL_SUPPORTED) || defined(PNG_WRITE_sCAL_SUPPORTED)
457 #ifdef PNG_FLOATING_POINT_SUPPORTED
462 png_debug1(1,
"in %s storage function\n",
"sCAL");
463 if (png_ptr == NULL ||
info_ptr == NULL)
473 #ifdef PNG_FIXED_POINT_SUPPORTED
480 png_debug1(1,
"in %s storage function\n",
"sCAL");
481 if (png_ptr == NULL ||
info_ptr == NULL)
487 png_debug1(3,
"allocating unit for info (%u bytes)\n",
493 "Memory allocation failed while processing sCAL.");
499 png_debug1(3,
"allocating unit for info (%u bytes)\n",
502 if (
info_ptr->scal_s_height == NULL)
507 "Memory allocation failed while processing sCAL.");
512 #ifdef PNG_FREE_ME_SUPPORTED
520 #if defined(PNG_pHYs_SUPPORTED)
525 png_debug1(1,
"in %s storage function\n",
"pHYs");
526 if (png_ptr == NULL ||
info_ptr == NULL)
541 png_debug1(1,
"in %s storage function\n",
"PLTE");
542 if (png_ptr == NULL ||
info_ptr == NULL)
548 png_error(png_ptr,
"Invalid palette length");
561 #ifdef PNG_FREE_ME_SUPPORTED
573 info_ptr->palette = png_ptr->palette;
576 #ifdef PNG_FREE_ME_SUPPORTED
579 png_ptr->flags |= PNG_FLAG_FREE_PLTE;
585 #if defined(PNG_sBIT_SUPPORTED)
590 png_debug1(1,
"in %s storage function\n",
"sBIT");
591 if (png_ptr == NULL ||
info_ptr == NULL)
599 #if defined(PNG_sRGB_SUPPORTED)
603 png_debug1(1,
"in %s storage function\n",
"sRGB");
604 if (png_ptr == NULL ||
info_ptr == NULL)
615 #if defined(PNG_gAMA_SUPPORTED)
616 #ifdef PNG_FLOATING_POINT_SUPPORTED
619 #ifdef PNG_FIXED_POINT_SUPPORTED
623 #if defined(PNG_cHRM_SUPPORTED)
624 #ifdef PNG_FLOATING_POINT_SUPPORTED
627 #ifdef PNG_FIXED_POINT_SUPPORTED
632 png_debug1(1,
"in %s storage function\n",
"sRGB_gAMA_and_cHRM");
633 if (png_ptr == NULL ||
info_ptr == NULL)
638 #if defined(PNG_gAMA_SUPPORTED)
639 #ifdef PNG_FLOATING_POINT_SUPPORTED
643 #ifdef PNG_FIXED_POINT_SUPPORTED
649 #if defined(PNG_cHRM_SUPPORTED)
650 #ifdef PNG_FIXED_POINT_SUPPORTED
664 #ifdef PNG_FLOATING_POINT_SUPPORTED
682 #if defined(PNG_iCCP_SUPPORTED)
692 png_debug1(1,
"in %s storage function\n",
"iCCP");
698 if (new_iccp_name == NULL)
700 png_warning(png_ptr,
"Insufficient memory to process iCCP chunk.");
705 if (new_iccp_profile == NULL)
709 "Insufficient memory to process iCCP profile.");
717 info_ptr->iccp_name = new_iccp_name;
718 info_ptr->iccp_profile = new_iccp_profile;
722 #ifdef PNG_FREE_ME_SUPPORTED
729 #if defined(PNG_TEXT_SUPPORTED)
737 png_error(png_ptr,
"Insufficient memory to store text");
746 png_debug1(1,
"in %s storage function\n", (png_ptr->chunk_name[0] ==
'\0' ?
784 #ifdef PNG_FREE_ME_SUPPORTED
788 png_debug1(3,
"allocated %d entries for info_ptr->text\n",
808 #ifdef PNG_iTXt_SUPPORTED
830 #ifdef PNG_iTXt_SUPPORTED
840 textp->compression =
text_ptr[
i].compression;
845 (key_len + text_length + lang_len + lang_key_len + 4));
846 if (textp->key == NULL)
848 png_debug2(2,
"Allocated %lu bytes at %x in png_set_text\n",
850 (key_len + lang_len + lang_key_len + text_length + 4),
855 *(textp->key + key_len) =
'\0';
856 #ifdef PNG_iTXt_SUPPORTED
859 textp->lang = textp->key + key_len + 1;
861 *(textp->lang + lang_len) =
'\0';
862 textp->lang_key = textp->lang + lang_len + 1;
864 *(textp->lang_key + lang_key_len) =
'\0';
865 textp->text = textp->lang_key + lang_key_len + 1;
870 #ifdef PNG_iTXt_SUPPORTED
872 textp->lang_key=NULL;
874 textp->text = textp->key + key_len + 1;
879 *(textp->text + text_length) =
'\0';
881 #ifdef PNG_iTXt_SUPPORTED
882 if (textp->compression > 0)
884 textp->text_length = 0;
885 textp->itxt_length = text_length;
890 textp->text_length = text_length;
891 #ifdef PNG_iTXt_SUPPORTED
892 textp->itxt_length = 0;
902 #if defined(PNG_tIME_SUPPORTED)
906 png_debug1(1,
"in %s storage function\n",
"tIME");
907 if (png_ptr == NULL ||
info_ptr == NULL ||
908 (png_ptr->mode & PNG_WROTE_tIME))
916 #if defined(PNG_tRNS_SUPPORTED)
921 png_debug1(1,
"in %s storage function\n",
"tRNS");
922 if (png_ptr == NULL ||
info_ptr == NULL)
933 #ifdef PNG_FREE_ME_SUPPORTED
946 int sample_max = (1 <<
info_ptr->bit_depth);
954 "tRNS chunk has out-of-range samples for bit_depth");
965 #ifdef PNG_FREE_ME_SUPPORTED
968 png_ptr->flags |= PNG_FLAG_FREE_TRNS;
974 #if defined(PNG_sPLT_SUPPORTED)
989 if (png_ptr == NULL ||
info_ptr == NULL)
997 png_warning(png_ptr,
"No memory for sPLT palettes.");
1014 if (to->name == NULL)
1017 "Out of memory while processing sPLT chunk");
1023 if (to->entries == NULL)
1026 "Out of memory while processing sPLT chunk");
1033 to->nentries = from->nentries;
1034 to->depth = from->depth;
1040 #ifdef PNG_FREE_ME_SUPPORTED
1046 #if defined(PNG_UNKNOWN_CHUNKS_SUPPORTED)
1063 "Out of memory while processing unknown chunk.");
1081 to->size = from->size;
1083 to->location = (
png_byte)(png_ptr->mode & 0xff);
1085 if (from->size == 0)
1091 if (to->data == NULL)
1094 "Out of memory while processing unknown chunk.");
1098 png_memcpy(to->data, from->data, from->size);
1104 #ifdef PNG_FREE_ME_SUPPORTED
1118 #if defined(PNG_1_0_X) || defined(PNG_1_2_X)
1119 #if defined(PNG_READ_EMPTY_PLTE_SUPPORTED) || \
1120 defined(PNG_WRITE_EMPTY_PLTE_SUPPORTED)
1126 png_debug(1,
"in png_permit_empty_plte, DEPRECATED.\n");
1127 if (png_ptr == NULL)
1129 png_ptr->mng_features_permitted = (
png_byte)
1136 #if defined(PNG_MNG_FEATURES_SUPPORTED)
1140 png_debug(1,
"in png_permit_mng_features\n");
1141 if (png_ptr == NULL)
1143 png_ptr->mng_features_permitted =
1145 return (
png_uint_32)png_ptr->mng_features_permitted;
1149 #if defined(PNG_UNKNOWN_CHUNKS_SUPPORTED)
1155 int i, old_num_chunks;
1156 if (png_ptr == NULL)
1161 png_ptr->flags |= PNG_FLAG_KEEP_UNKNOWN_CHUNKS;
1163 png_ptr->flags &= ~PNG_FLAG_KEEP_UNKNOWN_CHUNKS;
1166 png_ptr->flags |= PNG_FLAG_KEEP_UNSAFE_CHUNKS;
1168 png_ptr->flags &= ~PNG_FLAG_KEEP_UNSAFE_CHUNKS;
1173 old_num_chunks = png_ptr->num_chunk_list;
1177 if (png_ptr->chunk_list != NULL)
1181 png_free(png_ptr, png_ptr->chunk_list);
1182 png_ptr->chunk_list=NULL;
1186 for (p = new_list + 5*old_num_chunks + 4,
i = 0;
i<
num_chunks;
i++, p += 5)
1188 png_ptr->num_chunk_list = old_num_chunks +
num_chunks;
1189 png_ptr->chunk_list = new_list;
1190 #ifdef PNG_FREE_ME_SUPPORTED
1196 #if defined(PNG_READ_USER_CHUNKS_SUPPORTED)
1201 png_debug(1,
"in png_set_read_user_chunk_fn\n");
1202 if (png_ptr == NULL)
1209 #if defined(PNG_INFO_IMAGE_SUPPORTED)
1213 png_debug1(1,
"in %s storage function\n",
"rows");
1215 if (png_ptr == NULL ||
info_ptr == NULL)
1226 #ifdef PNG_WRITE_SUPPORTED
1231 if (png_ptr == NULL)
1236 png_ptr->zstream.next_out = png_ptr->zbuf;
1237 png_ptr->zstream.avail_out = (
uInt)png_ptr->zbuf_size;
1250 #ifdef PNG_ASSEMBLER_CODE_SUPPORTED
1256 if (png_ptr != NULL)
1257 png_ptr->asm_flags = 0;
1268 if (png_ptr == NULL)
1276 #ifdef PNG_SET_USER_LIMITS_SUPPORTED
1286 if (png_ptr == NULL)
return;
void PNGAPI png_set_text(png_structp png_ptr, png_infop info_ptr, png_textp text_ptr, int num_text)
void PNGAPI png_set_cHRM_fixed(png_structp png_ptr, png_infop info_ptr, png_fixed_point white_x, png_fixed_point white_y, png_fixed_point red_x, png_fixed_point red_y, png_fixed_point green_x, png_fixed_point green_y, png_fixed_point blue_x, png_fixed_point blue_y)
png_infop png_uint_32 png_uint_32 * res_y
png_voidp PNGAPI png_malloc_warn(png_structp png_ptr, png_uint_32 size)
#define PNG_FLAG_MNG_EMPTY_PLTE
#define PNG_INTERLACE_LAST
png_infop png_textp * text_ptr
void PNGAPI png_set_hIST(png_structp png_ptr, png_infop info_ptr, png_uint_16p hist)
png_infop png_uint_32 * width
void PNGAPI png_set_gAMA(png_structp png_ptr, png_infop info_ptr, double file_gamma)
png_infop int png_uint_32 mask
png_infop png_charpp int png_charpp png_uint_32 * proflen
void PNGAPI png_set_mmx_thresholds(png_structp png_ptr, png_byte mmx_bitdepth_threshold, png_uint_32 mmx_rowbytes_threshold)
png_infop double double double double double double double double * blue_y
#define png_debug2(l, m, p1, p2)
void PNGAPI png_set_unknown_chunk_location(png_structp png_ptr, png_infop info_ptr, int chunk, int location)
#define PNG_HANDLE_CHUNK_IF_SAFE
png_infop int int location
png_infop png_textp int * num_text
int png_set_text_2(png_structp png_ptr, png_infop info_ptr, png_textp text_ptr, int num_text)
png_infop png_sPLT_tpp entries
void PNGAPI png_set_sRGB(png_structp png_ptr, png_infop info_ptr, int intent)
void PNGAPI png_set_compression_buffer_size(png_structp png_ptr, png_uint_32 size)
png_infop png_int_32 png_int_32 int * unit_type
png_uint_32 PNGAPI png_permit_mng_features(png_structp png_ptr, png_uint_32 mng_features)
png_byte mmx_bitdepth_threshold
png_color_16 FAR * png_color_16p
png_infop png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point * int_green_y
png_color_8 FAR * png_color_8p
png_infop png_unknown_chunkp unknowns
png_infop png_charp png_int_32 png_int_32 int int png_charp png_charpp * params
void PNGAPI png_set_iCCP(png_structp png_ptr, png_infop info_ptr, png_charp name, int compression_type, png_charp profile, png_uint_32 proflen)
png_unknown_chunk FAR * png_unknown_chunkp
#define PNG_COLOR_TYPE_RGB_ALPHA
png_infop png_fixed_point png_fixed_point png_fixed_point * int_red_x
void PNGAPI png_free_data(png_structp png_ptr, png_infop info_ptr, png_uint_32 mask, int num)
png_color FAR * png_colorp
#define PNG_FILTER_TYPE_BASE
void PNGAPI png_set_IHDR(png_structp png_ptr, png_infop info_ptr, png_uint_32 width, png_uint_32 height, int bit_depth, int color_type, int interlace_type, int compression_type, int filter_type)
void PNGAPI png_set_bKGD(png_structp png_ptr, png_infop info_ptr, png_color_16p background)
png_voidp PNGAPI png_malloc(png_structp png_ptr, png_uint_32 size)
png_infop png_uint_32 png_uint_32 int * bit_depth
png_sPLT_t FAR * png_sPLT_tp
void PNGAPI png_set_sPLT(png_structp png_ptr, png_infop info_ptr, png_sPLT_tp entries, int nentries)
PNG_CONST char FAR * png_const_charp
png_infop png_charp png_int_32 png_int_32 int * type
#define PNG_INTRAPIXEL_DIFFERENCING
#define PNG_USER_HEIGHT_MAX
png_infop png_charp png_int_32 png_int_32 * X1
png_infop png_bytepp row_pointers
png_byte FAR *FAR * png_bytepp
#define PNG_COLOR_TYPE_RGB
#define PNG_FLAG_MNG_FILTER_64
png_infop png_charpp int png_charpp profile
void PNGAPI png_set_unknown_chunks(png_structp png_ptr, png_infop info_ptr, png_unknown_chunkp unknowns, int num_unknowns)
#define PNG_TEXT_COMPRESSION_NONE
png_infop double double * white_y
#define PNG_MAX_PALETTE_LENGTH
png_infop png_charpp int * compression_type
void PNGAPI png_set_sRGB_gAMA_and_cHRM(png_structp png_ptr, png_infop info_ptr, int intent)
void PNGAPI png_set_PLTE(png_structp png_ptr, png_infop info_ptr, png_colorp palette, int num_palette)
png_infop png_fixed_point png_fixed_point png_fixed_point png_fixed_point * int_red_y
#define PNG_ALL_MNG_FEATURES
void PNGAPI png_set_pCAL(png_structp png_ptr, png_infop info_ptr, png_charp purpose, png_int_32 X0, png_int_32 X1, int type, int nparams, png_charp units, png_charpp params)
png_infop double double double double double * green_x
png_infop png_charp png_int_32 png_int_32 int int png_charp * units
#define PNG_COLOR_TYPE_GRAY
#define PNG_HANDLE_CHUNK_ALWAYS
void PNGAPI png_set_oFFs(png_structp png_ptr, png_infop info_ptr, png_int_32 offset_x, png_int_32 offset_y, int unit_type)
void PNGAPI png_set_read_user_chunk_fn(png_structp png_ptr, png_voidp user_chunk_ptr, png_user_chunk_ptr read_user_chunk_fn)
png_infop png_fixed_point * int_file_gamma
void PNGAPI png_warning(png_structp png_ptr, png_const_charp warning_message)
#define PNG_ITXT_COMPRESSION_NONE
void PNGAPI png_set_pHYs(png_structp png_ptr, png_infop info_ptr, png_uint_32 res_x, png_uint_32 res_y, int unit_type)
png_infop png_sPLT_tp int nentries
void PNGAPI png_set_sCAL(png_structp png_ptr, png_infop info_ptr, int unit, double width, double height)
png_byte png_uint_32 mmx_rowbytes_threshold
void PNGAPI png_set_sBIT(png_structp png_ptr, png_infop info_ptr, png_color_8p sig_bit)
#define PNG_COMPRESSION_TYPE_BASE
png_infop png_uint_32 * res_x
png_infop png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point * int_blue_x
png_infop png_charp * purpose
png_struct FAR * png_structp
unsigned short png_uint_16
png_infop png_charpp name
png_infop png_bytep * trans
png_infop png_fixed_point png_fixed_point * int_white_y
png_uint_16 FAR * png_uint_16p
void PNGAPI png_set_tRNS(png_structp png_ptr, png_infop info_ptr, png_bytep trans, int num_trans, png_color_16p trans_values)
png_infop png_charp png_int_32 png_int_32 int int * nparams
#define png_debug1(l, m, p1)
void PNGAPI png_set_cHRM(png_structp png_ptr, png_infop info_ptr, double white_x, double white_y, double red_x, double red_y, double green_x, double green_y, double blue_x, double blue_y)
png_infop double double double double double double double * blue_x
png_infop png_charp png_int_32 * X0
png_infop double * file_gamma
png_infop png_int_32 png_int_32 * offset_y
void PNGAPI png_set_gAMA_fixed(png_structp png_ptr, png_infop info_ptr, png_fixed_point int_gamma)
png_uint_32 png_uint_32 user_height_max
png_infop png_color_16p * background
#define PNG_FREE_ME_SUPPORTED
int png_bytep int num_chunks
void PNGAPI png_set_user_limits(png_structp png_ptr, png_uint_32 user_width_max, png_uint_32 user_height_max)
png_infop png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point * int_blue_y
void PNGAPI png_set_invalid(png_structp png_ptr, png_infop info_ptr, int mask)
png_infop png_int_32 * offset_x
#define PNG_COLOR_MASK_COLOR
png_voidp png_user_chunk_ptr read_user_chunk_fn
png_infop png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point * int_green_x
png_infop png_color_8p * sig_bit
png_infop double double double double * red_y
unsigned long png_uint_32
void PNGAPI png_set_keep_unknown_chunks(png_structp png_ptr, int keep, png_bytep chunk_list, int num_chunks)
png_infop png_uint_32 png_uint_32 * height
png_infop png_bytep int * num_trans
png_sPLT_entry FAR * png_sPLT_entryp
png_int_32 png_fixed_point
char FAR *FAR * png_charpp
png_bytep png_bytep png_size_t length
png_infop double * white_x
void PNGAPI png_permit_empty_plte(png_structp png_ptr, int empty_plte_permitted)
png_infop double double double double double double * green_y
png_infop png_unknown_chunkp int num_unknowns
png_infop png_bytep int png_color_16p * trans_values
png_infop png_uint_32 png_uint_32 int int * color_type
png_infop png_uint_16p * hist
#define PNG_COLOR_TYPE_GRAY_ALPHA
void PNGAPI png_set_rows(png_structp png_ptr, png_infop info_ptr, png_bytepp row_pointers)
void PNGAPI png_set_asm_flags(png_structp png_ptr, png_uint_32 asm_flags)
void PNGAPI png_error(png_structp png_ptr, png_const_charp error_message)
#define PNG_COLOR_MASK_ALPHA
void PNGAPI png_set_tIME(png_structp png_ptr, png_infop info_ptr, png_timep mod_time)
png_infop png_timep * mod_time
png_infop double double double * red_x
void PNGAPI png_free(png_structp png_ptr, png_voidp ptr)
png_uint_32 user_width_max
#define PNG_USER_WIDTH_MAX
#define PNG_COLOR_TYPE_PALETTE
png_colorp int num_palette
png_infop png_fixed_point * int_white_x
openhrp3
Author(s): AIST, General Robotix Inc., Nakamura Lab of Dept. of Mechano Informatics at University of Tokyo
autogenerated on Wed Sep 7 2022 02:51:04