diff options
| author | Mathieu Malaterre <mathieu.malaterre@gmail.com> | 2010-06-22 19:27:35 +0000 |
|---|---|---|
| committer | Mathieu Malaterre <mathieu.malaterre@gmail.com> | 2010-06-22 19:27:35 +0000 |
| commit | f71e6e78791f4a8c7963f82aed5c06b9372b9b87 (patch) | |
| tree | fe715fb6b52c578d7cbdc51569b70cce492b274f /codec/j2k_to_image.c | |
| parent | 3a44c91ea3dbe7e7e0ce1d7d941992ac928d8d4c (diff) | |
Finish fixing up bugs with png i/o
Diffstat (limited to 'codec/j2k_to_image.c')
| -rw-r--r-- | codec/j2k_to_image.c | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/codec/j2k_to_image.c b/codec/j2k_to_image.c index 1e862d67..818e5f6f 100644 --- a/codec/j2k_to_image.c +++ b/codec/j2k_to_image.c @@ -31,7 +31,6 @@ * POSSIBILITY OF SUCH DAMAGE. */ #include <stdio.h> -#define __USE_BSD #include <string.h> #include <stdlib.h> #include <math.h> @@ -43,6 +42,7 @@ #include "index.h" #ifndef WIN32 +#include <strings.h> #define _stricmp strcasecmp #define _strnicmp strncasecmp #endif @@ -60,7 +60,7 @@ #define TIF_DFMT 14 #define RAW_DFMT 15 #define TGA_DFMT 16 - +#define PNG_DFMT 17 /* ----------------------------------------------------------------------- */ typedef struct dircnt{ @@ -190,8 +190,8 @@ int load_images(dircnt_t *dirptr, char *imgdirpath){ int get_file_format(char *filename) { unsigned int i; - static const char *extension[] = {"pgx", "pnm", "pgm", "ppm", "bmp","tif", "raw", "tga", "j2k", "jp2", "jpt", "j2c", "jpc" }; - static const int format[] = { PGX_DFMT, PXM_DFMT, PXM_DFMT, PXM_DFMT, BMP_DFMT, TIF_DFMT, RAW_DFMT, TGA_DFMT, J2K_CFMT, JP2_CFMT, JPT_CFMT, J2K_CFMT, J2K_CFMT }; + static const char *extension[] = {"pgx", "pnm", "pgm", "ppm", "bmp","tif", "raw", "tga", "png", "j2k", "jp2", "jpt", "j2c", "jpc" }; + static const int format[] = { PGX_DFMT, PXM_DFMT, PXM_DFMT, PXM_DFMT, BMP_DFMT, TIF_DFMT, RAW_DFMT, TGA_DFMT, PNG_DFMT, J2K_CFMT, JP2_CFMT, JPT_CFMT, J2K_CFMT, J2K_CFMT }; char * ext = strrchr(filename, '.'); if (ext == NULL) return -1; @@ -288,6 +288,7 @@ int parse_cmdline_decoder(int argc, char **argv, opj_dparameters_t *parameters,i case TIF_DFMT: case RAW_DFMT: case TGA_DFMT: + case PNG_DFMT: break; default: fprintf(stderr, "Unknown output format image %s [only *.pnm, *.pgm, *.ppm, *.pgx, *.bmp, *.tif, *.raw or *.tga]!! \n", outfile); @@ -325,6 +326,9 @@ int parse_cmdline_decoder(int argc, char **argv, opj_dparameters_t *parameters,i case TGA_DFMT: img_fol->out_format = "raw"; break; + case PNG_DFMT: + img_fol->out_format = "png"; + break; default: fprintf(stderr, "Unknown output format image %s [only *.pnm, *.pgm, *.ppm, *.pgx, *.bmp, *.tif, *.raw or *.tga]!! \n", outformat); return 1; @@ -735,6 +739,16 @@ int main(int argc, char **argv) ret = EXIT_SUCCESS; } break; + + case PNG_DFMT: /* PNG */ + if(imagetopng(image, parameters.outfile)){ + fprintf(stdout,"Error generating png file. Outfile %s not generated\n",parameters.outfile); + } + else { + fprintf(stdout,"Successfully generated Outfile %s\n",parameters.outfile); + } + break; + } /* free remaining structures */ |
