Home | History | Annotate | Download | only in libpng

Lines Matching refs:info_ptr

24 write_unknown_chunks(png_structrp png_ptr, png_const_inforp info_ptr,
27 if (info_ptr->unknown_chunks_num)
33 for (up = info_ptr->unknown_chunks;
34 up < info_ptr->unknown_chunks + info_ptr->unknown_chunks_num;
78 * you to supply a PNG_INFO_ flag, and check info_ptr->valid before writing
84 png_write_info_before_PLTE(png_structrp png_ptr, png_const_inforp info_ptr)
88 if (png_ptr == NULL || info_ptr == NULL)
106 png_write_IHDR(png_ptr, info_ptr->width, info_ptr->height,
107 info_ptr->bit_depth, info_ptr->color_type, info_ptr->compression_type,
108 info_ptr->filter_type,
110 info_ptr->interlace_type
132 if (!(info_ptr->colorspace.flags & PNG_COLORSPACE_INVALID) &&
133 (info_ptr->colorspace.flags & PNG_COLORSPACE_FROM_gAMA) &&
134 (info_ptr->valid & PNG_INFO_gAMA))
135 png_write_gAMA_fixed(png_ptr, info_ptr->colorspace.gamma);
144 if (!(info_ptr->colorspace.flags & PNG_COLORSPACE_INVALID) &&
145 (info_ptr->valid & PNG_INFO_iCCP))
148 if (info_ptr->valid & PNG_INFO_sRGB)
153 png_write_iCCP(png_ptr, info_ptr->iccp_name,
154 info_ptr->iccp_profile);
162 if (!(info_ptr->colorspace.flags & PNG_COLORSPACE_INVALID) &&
163 (info_ptr->valid & PNG_INFO_sRGB))
164 png_write_sRGB(png_ptr, info_ptr->colorspace.rendering_intent);
169 if (info_ptr->valid & PNG_INFO_sBIT)
170 png_write_sBIT(png_ptr, &(info_ptr->sig_bit), info_ptr->color_type);
175 if (!(info_ptr->colorspace.flags & PNG_COLORSPACE_INVALID) &&
176 (info_ptr->colorspace.flags & PNG_COLORSPACE_FROM_cHRM) &&
177 (info_ptr->valid & PNG_INFO_cHRM))
178 png_write_cHRM_fixed(png_ptr, &info_ptr->colorspace.end_points_xy);
183 write_unknown_chunks(png_ptr, info_ptr, PNG_HAVE_IHDR);
191 png_write_info(png_structrp png_ptr, png_const_inforp info_ptr)
199 if (png_ptr == NULL || info_ptr == NULL)
202 png_write_info_before_PLTE(png_ptr, info_ptr);
204 if (info_ptr->valid & PNG_INFO_PLTE)
205 png_write_PLTE(png_ptr, info_ptr->palette,
206 (png_uint_32)info_ptr->num_palette);
208 else if (info_ptr->color_type == PNG_COLOR_TYPE_PALETTE)
212 if (info_ptr->valid & PNG_INFO_tRNS)
217 info_ptr->color_type == PNG_COLOR_TYPE_PALETTE)
220 for (j = 0; j<(int)info_ptr->num_trans; j++)
221 info_ptr->trans_alpha[j] =
222 (png_byte)(255 - info_ptr->trans_alpha[j]);
225 png_write_tRNS(png_ptr, info_ptr->trans_alpha, &(info_ptr->trans_color),
226 info_ptr->num_trans, info_ptr->color_type);
230 if (info_ptr->valid & PNG_INFO_bKGD)
231 png_write_bKGD(png_ptr, &(info_ptr->background), info_ptr->color_type);
235 if (info_ptr->valid & PNG_INFO_hIST)
236 png_write_hIST(png_ptr, info_ptr->hist, info_ptr->num_palette);
240 if (info_ptr->valid & PNG_INFO_oFFs)
241 png_write_oFFs(png_ptr, info_ptr->x_offset, info_ptr->y_offset,
242 info_ptr->offset_unit_type);
246 if (info_ptr->valid & PNG_INFO_pCAL)
247 png_write_pCAL(png_ptr, info_ptr->pcal_purpose, info_ptr->pcal_X0,
248 info_ptr->pcal_X1, info_ptr->pcal_type, info_ptr->pcal_nparams,
249 info_ptr->pcal_units, info_ptr->pcal_params);
253 if (info_ptr->valid & PNG_INFO_sCAL)
254 png_write_sCAL_s(png_ptr, (int)info_ptr->scal_unit,
255 info_ptr->scal_s_width, info_ptr->scal_s_height);
259 if (info_ptr->valid & PNG_INFO_pHYs)
260 png_write_pHYs(png_ptr, info_ptr->x_pixels_per_unit,
261 info_ptr->y_pixels_per_unit, info_ptr->phys_unit_type);
265 if (info_ptr->valid & PNG_INFO_tIME)
267 png_write_tIME(png_ptr, &(info_ptr->mod_time));
273 if (info_ptr->valid & PNG_INFO_sPLT)
274 for (i = 0; i < (int)info_ptr->splt_palettes_num; i++)
275 png_write_sPLT(png_ptr, info_ptr->splt_palettes + i);
280 for (i = 0; i < info_ptr->num_text; i++)
283 info_ptr->text[i].compression);
285 if (info_ptr->text[i].compression > 0)
290 info_ptr->text[i].compression,
291 info_ptr->text[i].key,
292 info_ptr->text[i].lang,
293 info_ptr->text[i].lang_key,
294 info_ptr->text[i].text);
299 info_ptr->text[i].compression = PNG_TEXT_COMPRESSION_NONE_WR;
303 else if (info_ptr->text[i].compression == PNG_TEXT_COMPRESSION_zTXt)
307 png_write_zTXt(png_ptr, info_ptr->text[i].key,
308 info_ptr->text[i].text, 0,
309 info_ptr->text[i].compression);
314 info_ptr->text[i].compression = PNG_TEXT_COMPRESSION_zTXt_WR;
317 else if (info_ptr->text[i].compression == PNG_TEXT_COMPRESSION_NONE)
321 png_write_tEXt(png_ptr, info_ptr->text[i].key,
322 info_ptr->text[i].text,
325 info_ptr->text[i].compression = PNG_TEXT_COMPRESSION_NONE_WR;
335 write_unknown_chunks(png_ptr, info_ptr, PNG_HAVE_PLTE);
345 png_write_end(png_structrp png_ptr, png_inforp info_ptr)
361 if (info_ptr != NULL)
368 if ((info_ptr->valid & PNG_INFO_tIME) &&
370 png_write_tIME(png_ptr, &(info_ptr->mod_time));
375 for (i = 0; i < info_ptr->num_text; i++)
378 info_ptr->text[i].compression);
380 if (info_ptr->text[i].compression > 0)
385 info_ptr->text[i].compression,
386 info_ptr->text[i].key,
387 info_ptr->text[i].lang,
388 info_ptr->text[i].lang_key,
389 info_ptr->text[i].text);
394 info_ptr->text[i].compression = PNG_TEXT_COMPRESSION_NONE_WR;
397 else if (info_ptr->text[i].compression >= PNG_TEXT_COMPRESSION_zTXt)
401 png_write_zTXt(png_ptr, info_ptr->text[i].key,
402 info_ptr->text[i].text, 0,
403 info_ptr->text[i].compression);
408 info_ptr->text[i].compression = PNG_TEXT_COMPRESSION_zTXt_WR;
411 else if (info_ptr->text[i].compression == PNG_TEXT_COMPRESSION_NONE)
415 png_write_tEXt(png_ptr, info_ptr->text[i].key,
416 info_ptr->text[i].text, 0);
422 info_ptr->text[i].compression = PNG_TEXT_COMPRESSION_NONE_WR;
427 write_unknown_chunks(png_ptr, info_ptr, PNG_AFTER_IDAT);
1543 png_write_png(png_structrp png_ptr, png_inforp info_ptr,
1546 if (png_ptr == NULL || info_ptr == NULL)
1549 if ((info_ptr->valid & PNG_INFO_IDAT) == 0)
1556 png_write_info(png_ptr, info_ptr);
1573 if (info_ptr->valid & PNG_INFO_sBIT)
1574 png_set_shift(png_ptr, &info_ptr->sig_bit);
1655 png_write_image(png_ptr, info_ptr->row_pointers);
1658 png_write_end(png_ptr, info_ptr);
1676 png_infop info_ptr = png_create_info_struct(png_ptr);
1678 if (info_ptr != NULL)
1688 control->info_ptr = info_ptr;
1696 png_destroy_info_struct(png_ptr, &info_ptr);
2113 png_set_PLTE(image->opaque->png_ptr, image->opaque->info_ptr, palette,
2117 png_set_tRNS(image->opaque->png_ptr, image->opaque->info_ptr, tRNS,
2130 png_inforp info_ptr = image->opaque->info_ptr;
2154 png_set_IHDR(png_ptr, info_ptr, image->width, image->height,
2168 png_set_IHDR(png_ptr, info_ptr, image->width, image->height,
2183 png_set_gAMA_fixed(png_ptr, info_ptr, PNG_GAMMA_LINEAR);
2186 png_set_cHRM_fixed(png_ptr, info_ptr,
2196 png_set_sRGB(png_ptr, info_ptr, PNG_sRGB_INTENT_PERCEPTUAL);
2202 png_set_gAMA_fixed(png_ptr, info_ptr, PNG_GAMMA_sRGB_INVERSE);
2205 png_write_info(png_ptr, info_ptr);
2282 png_get_rowbytes(png_ptr, info_ptr)));
2315 png_write_end(png_ptr, info_ptr);