1LIBPNGPF(3) Library Functions Manual LIBPNGPF(3)
2
3
4
6 libpng - Portable Network Graphics (PNG) Reference Library 1.2.29 (pri‐
7 vate functions)
8
10 #include <png.h>
11
12 void png_build_gamma_table (png_structp png_ptr);
13
14 void png_build_grayscale_palette (int bit_depth, png_colorp palette);
15
16 void png_calculate_crc (png_structp png_ptr, png_bytep ptr, png_size_t
17 length);
18
19 void png_check_chunk_name (png_structp png_ptr, png_bytep chunk_name);
20
21 png_size_t png_check_keyword (png_structp png_ptr, png_charp key,
22 png_charpp new_key);
23
24 void png_combine_row (png_structp png_ptr, png_bytep row, int mask);
25
26 void png_correct_palette (png_structp png_ptr, png_colorp palette, int
27 num_palette);
28
29 int png_crc_error (png_structp png_ptr);
30
31 int png_crc_finish (png_structp png_ptr, png_uint_32 skip);
32
33 void png_crc_read (png_structp png_ptr, png_bytep buf, png_size_t
34 length);
35
36 png_voidp png_create_struct (int type);
37
38 png_voidp png_create_struct_2 (int type, png_malloc_ptr malloc_fn,
39 png_voidp mem_ptr);
40
41 png_charp png_decompress_chunk (png_structp png_ptr, int comp_type,
42 png_charp chunkdata, png_size_t chunklength, png_size_t prefix_length,
43 png_size_t *data_length);
44
45 void png_destroy_struct (png_voidp struct_ptr);
46
47 void png_destroy_struct_2 (png_voidp struct_ptr, png_free_ptr free_fn,
48 png_voidp mem_ptr);
49
50 void png_do_background (png_row_infop row_info, png_bytep row,
51 png_color_16p trans_values, png_color_16p background, png_color_16p
52 background_1, png_bytep gamma_table, png_bytep gamma_from_1, png_bytep
53 gamma_to_1, png_uint_16pp gamma_16, png_uint_16pp gamma_16_from_1,
54 png_uint_16pp gamma_16_to_1, int gamma_shift);
55
56 void png_do_bgr (png_row_infop row_info, png_bytep row);
57
58 void png_do_chop (png_row_infop row_info, png_bytep row);
59
60 void png_do_dither (png_row_infop row_info, png_bytep row, png_bytep
61 palette_lookup, png_bytep dither_lookup);
62
63 void png_do_expand (png_row_infop row_info, png_bytep row,
64 png_color_16p trans_value);
65
66 void png_do_expand_palette (png_row_infop row_info, png_bytep row,
67 png_colorp palette, png_bytep trans, int num_trans);
68
69 void png_do_gamma (png_row_infop row_info, png_bytep row, png_bytep
70 gamma_table, png_uint_16pp gamma_16_table, int gamma_shift);
71
72 void png_do_gray_to_rgb (png_row_infop row_info, png_bytep row);
73
74 void png_do_invert (png_row_infop row_info, png_bytep row);
75
76 void png_do_pack (png_row_infop row_info, png_bytep row, png_uint_32
77 bit_depth);
78
79 void png_do_packswap (png_row_infop row_info, png_bytep row);
80
81 void png_do_read_filler (png_row_infop row_info, png_bytep row,
82 png_uint_32 filler, png_uint_32 flags);
83
84 void png_do_read_interlace (png_row_infop row_info, png_bytep row, int
85 pass, png_uint_32 transformations);
86
87 void png_do_read_invert_alpha (png_row_infop row_info, png_bytep row);
88
89 void png_do_read_swap_alpha (png_row_infop row_info, png_bytep row);
90
91 void png_do_read_transformations (png_structp png_ptr);
92
93 int png_do_rgb_to_gray (png_row_infop row_info, png_bytep row);
94
95 void png_do_shift (png_row_infop row_info, png_bytep row, png_color_8p
96 bit_depth);
97
98 void png_do_strip_filler (png_row_infop row_info, png_bytep row,
99 png_uint_32 flags);
100
101 void png_do_swap (png_row_infop row_info, png_bytep row);
102
103 void png_do_unpack (png_row_infop row_info, png_bytep row);
104
105 void png_do_unshift (png_row_infop row_info, png_bytep row,
106 png_color_8p sig_bits);
107
108 void png_do_write_interlace (png_row_infop row_info, png_bytep row, int
109 pass);
110
111 void png_do_write_invert_alpha (png_row_infop row_info, png_bytep row);
112
113 void png_do_write_swap_alpha (png_row_infop row_info, png_bytep row);
114
115 void png_do_write_transformations (png_structp png_ptr);
116
117 void *png_far_to_near (png_structp png_ptr,png_voidp ptr, int check);
118
119 void png_flush (png_structp png_ptr);
120
121 void png_handle_bKGD (png_structp png_ptr, png_infop info_ptr,
122 png_uint_32 length);
123
124 void png_handle_cHRM (png_structp png_ptr, png_infop info_ptr,
125 png_uint_32 length);
126
127 void png_handle_gAMA (png_structp png_ptr, png_infop info_ptr,
128 png_uint_32 length);
129
130 void png_handle_hIST (png_structp png_ptr, png_infop info_ptr,
131 png_uint_32 length);
132
133 void png_handle_IEND (png_structp png_ptr, png_infop info_ptr,
134 png_uint_32 length);
135
136 void png_handle_IHDR (png_structp png_ptr, png_infop info_ptr,
137 png_uint_32 length);
138
139 void png_handle_iCCP (png_structp png_ptr, png_infop info_ptr,
140 png_uint_32 length);
141
142 void png_handle_iTXt (png_structp png_ptr, png_infop info_ptr,
143 png_uint_32 length);
144
145 void png_handle_oFFs (png_structp png_ptr, png_infop info_ptr,
146 png_uint_32 length);
147
148 void png_handle_pCAL (png_structp png_ptr, png_infop info_ptr,
149 png_uint_32 length);
150
151 void png_handle_pHYs (png_structp png_ptr, png_infop info_ptr,
152 png_uint_32 length);
153
154 void png_handle_PLTE (png_structp png_ptr, png_infop info_ptr,
155 png_uint_32 length);
156
157 void png_handle_sBIT (png_structp png_ptr, png_infop info_ptr,
158 png_uint_32 length);
159
160 void png_handle_sCAL (png_structp png_ptr, png_infop info_ptr,
161 png_uint_32 length);
162
163 void png_handle_sPLT (png_structp png_ptr, png_infop info_ptr,
164 png_uint_32 length);
165
166 void png_handle_sRGB (png_structp png_ptr, png_infop info_ptr,
167 png_uint_32 length);
168
169 void png_handle_tEXt (png_structp png_ptr, png_infop info_ptr,
170 png_uint_32 length);
171
172 void png_handle_tIME (png_structp png_ptr, png_infop info_ptr,
173 png_uint_32 length);
174
175 void png_handle_tRNS (png_structp png_ptr, png_infop info_ptr,
176 png_uint_32 length);
177
178 void png_handle_unknown (png_structp png_ptr, png_infop info_ptr,
179 png_uint_32 length);
180
181 void png_handle_zTXt (png_structp png_ptr, png_infop info_ptr,
182 png_uint_32 length);
183
184 void png_info_destroy (png_structp png_ptr, png_infop info_ptr);
185
186 void png_init_mmx_flags (png_structp png_ptr);
187
188 void png_init_read_transformations (png_structp png_ptr);
189
190 void png_process_IDAT_data (png_structp png_ptr, png_bytep buffer,
191 png_size_t buffer_length);
192
193 void png_process_some_data (png_structp png_ptr, png_infop info_ptr);
194
195 void png_push_check_crc (png_structp png_ptr);
196
197 void png_push_crc_finish (png_structp png_ptr);
198
199 void png_push_crc_skip (png_structp png_ptr, png_uint_32 length);
200
201 void png_push_fill_buffer (png_structp png_ptr, png_bytep buffer,
202 png_size_t length);
203
204 void png_push_handle_tEXt (png_structp png_ptr, png_infop info_ptr,
205 png_uint_32 length);
206
207 void png_push_handle_unknown (png_structp png_ptr, png_infop info_ptr,
208 png_uint_32 length);
209
210 void png_push_handle_zTXt (png_structp png_ptr, png_infop info_ptr,
211 png_uint_32 length);
212
213 void png_push_have_end (png_structp png_ptr, png_infop info_ptr);
214
215 void png_push_have_info (png_structp png_ptr, png_infop info_ptr);
216
217 void png_push_have_row (png_structp png_ptr, png_bytep row);
218
219 void png_push_process_row (png_structp png_ptr);
220
221 void png_push_read_chunk (png_structp png_ptr, png_infop info_ptr);
222
223 void png_push_read_end (png_structp png_ptr, png_infop info_ptr);
224
225 void png_push_read_IDAT (png_structp png_ptr);
226
227 void png_push_read_sig (png_structp png_ptr, png_infop info_ptr);
228
229 void png_push_read_tEXt (png_structp png_ptr, png_infop info_ptr);
230
231 void png_push_read_zTXt (png_structp png_ptr, png_infop info_ptr);
232
233 void png_push_restore_buffer (png_structp png_ptr, png_bytep buffer,
234 png_size_t buffer_length);
235
236 void png_push_save_buffer (png_structp png_ptr);
237
238 void png_read_data (png_structp png_ptr, png_bytep data, png_size_t
239 length);
240
241 void png_read_filter_row (png_structp png_ptr, png_row_infop row_info,
242 png_bytep row, png_bytep prev_row, int filter);
243
244 void png_read_finish_row (png_structp png_ptr);
245
246 void png_read_push_finish_row (png_structp png_ptr);
247
248 void png_read_start_row (png_structp png_ptr);
249
250 void png_read_transform_info (png_structp png_ptr, png_infop info_ptr);
251
252 void png_reset_crc (png_structp png_ptr);
253
254 int png_set_text_2 (png_structp png_ptr, png_infop info_ptr, png_textp
255 text_ptr, int num_text);
256
257 void png_write_cHRM (png_structp png_ptr, double white_x, double
258 white_y, double red_x, double red_y, double green_x, double green_y,
259 double blue_x, double blue_y);
260
261 void png_write_cHRM_fixed (png_structp png_ptr, png_uint_32 white_x,
262 png_uint_32 white_y, png_uint_32 red_x, png_uint_32 red_y, png_uint_32
263 green_x, png_uint_32 green_y, png_uint_32 blue_x, png_uint_32 blue_y);
264
265 void png_write_data (png_structp png_ptr, png_bytep data, png_size_t
266 length);
267
268 void png_write_filtered_row (png_structp png_ptr, png_bytep fil‐
269 tered_row);
270
271 void png_write_find_filter (png_structp png_ptr, png_row_infop
272 row_info);
273
274 void png_write_finish_row (png_structp png_ptr);
275
276 void png_write_gAMA (png_structp png_ptr, double file_gamma);
277
278 void png_write_gAMA_fixed (png_structp png_ptr, png_uint_32
279 int_file_gamma);
280
281 void png_write_hIST (png_structp png_ptr, png_uint_16p hist, int
282 num_hist);
283
284 void png_write_iCCP (png_structp png_ptr, png_charp name, int compres‐
285 sion_type, png_charp profile, int proflen);
286
287 void png_write_IDAT (png_structp png_ptr, png_bytep data, png_size_t
288 length);
289
290 void png_write_IEND (png_structp png_ptr);
291
292 void png_write_IHDR (png_structp png_ptr, png_uint_32 width,
293 png_uint_32 height, int bit_depth, int color_type, int compres‐
294 sion_type, int filter_type, int interlace_type);
295
296 void png_write_iTXt (png_structp png_ptr, int compression, png_charp
297 key, png_charp lang, png_charp translated_key, png_charp text);
298
299 void png_write_oFFs (png_structp png_ptr, png_uint_32 x_offset,
300 png_uint_32 y_offset, int unit_type);
301
302 void png_write_pCAL (png_structp png_ptr, png_charp purpose, png_int_32
303 X0, png_int_32 X1, int type, int nparams, png_charp units, png_charpp
304 params);
305
306 void png_write_pHYs (png_structp png_ptr, png_uint_32 x_pix‐
307 els_per_unit, png_uint_32 y_pixels_per_unit, int unit_type);
308
309 void png_write_PLTE (png_structp png_ptr, png_colorp palette,
310 png_uint_32 num_pal);
311
312 void png_write_sBIT (png_structp png_ptr, png_color_8p sbit, int
313 color_type);
314
315 void png_write_sCAL (png_structp png_ptr, png_charp unit, double width,
316 double height);
317
318 void png_write_sCAL_s (png_structp png_ptr, png_charp unit, png_charp
319 width, png_charp height);
320
321 void png_write_sig (png_structp png_ptr);
322
323 void png_write_sRGB (png_structp png_ptr, int intent);
324
325 void png_write_sPLT (png_structp png_ptr, png_spalette_p palette);
326
327 void png_write_start_row (png_structp png_ptr);
328
329 void png_write_tEXt (png_structp png_ptr, png_charp key, png_charp
330 text, png_size_t text_len);
331
332 void png_write_tIME (png_structp png_ptr, png_timep mod_time);
333
334 void png_write_tRNS (png_structp png_ptr, png_bytep trans,
335 png_color_16p values, int number, int color_type);
336
337 void png_write_zTXt (png_structp png_ptr, png_charp key, png_charp
338 text, png_size_t text_len, int compression);
339
340 voidpf png_zalloc (voidpf png_ptr, uInt items, uInt size);
341
342 void png_zfree (voidpf png_ptr, voidpf ptr);
343
344
345
346
348 The functions listed above are used privately by libpng and are not
349 recommended for use by applications. They are not "exported" to appli‐
350 cations using shared libraries. They are listed alphabetically here as
351 an aid to libpng maintainers. See png.h for more information on these
352 functions.
353
354
356 libpng(3), png(5)
357
359 Glenn Randers-Pehrson
360
361
362
363 May 8, 2008 LIBPNGPF(3)