blob: f9658c5817e44d479323e008e49dde8602508fcc (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
#ifndef PNGX_H_INCLUDED
#define PNGX_H_INCLUDED
#include <png.h>
#include "pm_c_util.h"
/* pngx is designed to be an extension of the PNG library to make using
the PNG library easier and cleaner.
*/
typedef enum {PNGX_READ, PNGX_WRITE} pngx_rw;
struct pngx {
png_structp png_ptr;
png_infop info_ptr;
pngx_rw rw;
png_uint_16 maxval;
};
void
pngx_create(struct pngx ** const pngxPP,
pngx_rw const rw,
jmp_buf * const jmpbufP);
void
pngx_destroy(struct pngx * const pngxP);
bool
pngx_chunkIsPresent(struct pngx * const pngxP,
uint32_t const chunkType);
void
pngx_setText(struct pngx * const pngxP,
png_textp const textP,
unsigned int const count);
void
pngx_setIhdr(struct pngx * const pngxP,
unsigned int const width,
unsigned int const height,
unsigned int const bitDepth,
int const colorType,
int const interlaceMethod,
int const compressionMethod,
int const filterMethod);
void
pngx_writeInfo(struct pngx * const pngxP);
void
pngx_writeEnd(struct pngx * const pngxP);
#endif
|