int XpmCreateXpmImageFromBuffer(char *buffer, XpmImage *image, XpmInfo *info) { xpmData mdata; int ErrorStatus; /* init returned values */ xpmInitXpmImage(image); xpmInitXpmInfo(info); /* open buffer to read */ xpmOpenBuffer(buffer, &mdata); /* create the XpmImage from the XpmData */ ErrorStatus = xpmParseData(&mdata, image, info); xpmDataClose(&mdata); return (ErrorStatus); }
int main(int argc, char **argv) { XpmImage image; char *filename; int ErrorStatus; xpmData data; #ifdef USE_GETTEXT setlocale(LC_ALL,""); bindtextdomain("cxpm",LOCALEDIR); textdomain("cxpm"); #endif if (argc > 1) { if (!strcmp(argv[1], "-?") || !strncmp(argv[1], "-h", 2)) { /* L10N_Comments : Usage message produced by running cxpm -h %s will be replaced by argv[0] (program name) */ fprintf(stderr, gettext("Usage: %s [filename]\n"), argv[0]); exit(1); } filename = argv[1]; } else { filename = NULL; } xpmInitXpmImage(&image); if ((ErrorStatus = OpenReadFile(filename, &data)) != XpmSuccess) ErrorMessage(ErrorStatus, NULL); ErrorStatus = xpmParseData(&data, &image, NULL); ErrorMessage(ErrorStatus, &data); xpmDataClose(&data); XpmFreeXpmImage(&image); exit(0); }
int XpmReadFileToXpmImage( char *filename, XpmImage *image, XpmInfo *info) { xpmData mdata; int ErrorStatus; /* init returned values */ xpmInitXpmImage(image); xpmInitXpmInfo(info); /* open file to read */ if ((ErrorStatus = OpenReadFile(filename, &mdata)) != XpmSuccess) return (ErrorStatus); /* create the XpmImage from the XpmData */ ErrorStatus = xpmParseData(&mdata, image, info); xpmDataClose(&mdata); return (ErrorStatus); }