129 |
|
progname); |
130 |
|
quit(1); |
131 |
|
} |
132 |
< |
printf("-Y %d +X %d\n", yres, xres); /* resolution */ |
132 |
> |
fputresolu(YMAJOR|YDECR, xres, yres, stdout); |
133 |
|
valtopix(); |
134 |
|
} else { |
135 |
|
/* get header */ |
136 |
|
getheader(fin, checkhead); |
137 |
|
|
138 |
|
if (xres <= 0 || yres <= 0) /* get picture size */ |
139 |
< |
if (fscanf(fin, "-Y %d +X %d\n", &yres, &xres) != 2) { |
139 |
> |
if (fgetresolu(&xres, &yres, fin) != (YMAJOR|YDECR)) { |
140 |
|
fprintf(stderr, |
141 |
|
"%s: missing x and y resolution\n", |
142 |
|
progname); |
158 |
|
{ |
159 |
|
if (header) |
160 |
|
fputs(line, stdout); |
161 |
< |
if (!strncmp(line, "EXPOSURE=", 9)) |
162 |
< |
exposure *= atof(line+9); |
161 |
> |
if (isexpos(line)) |
162 |
> |
exposure *= exposval(line); |
163 |
|
} |
164 |
|
|
165 |
|
|
259 |
|
{ |
260 |
|
double vd[3]; |
261 |
|
|
262 |
< |
if (fread(vd, sizeof(double), 3, fp) != 3) |
262 |
> |
if (fread((char *)vd, sizeof(double), 3, fp) != 3) |
263 |
|
return(-1); |
264 |
|
setcolor(col, vd[0], vd[1], vd[2]); |
265 |
|
return(0); |
272 |
|
{ |
273 |
|
float vf[3]; |
274 |
|
|
275 |
< |
if (fread(vf, sizeof(float), 3, fp) != 3) |
275 |
> |
if (fread((char *)vf, sizeof(float), 3, fp) != 3) |
276 |
|
return(-1); |
277 |
|
setcolor(col, vf[0], vf[1], vf[2]); |
278 |
|
return(0); |
298 |
|
{ |
299 |
|
BYTE vb[3]; |
300 |
|
|
301 |
< |
if (fread(vb, sizeof(BYTE), 3, fp) != 3) |
301 |
> |
if (fread((char *)vb, sizeof(BYTE), 3, fp) != 3) |
302 |
|
return(-1); |
303 |
|
setcolor(col,(vb[0]+.5)/256.,(vb[1]+.5)/256.,(vb[2]+.5)/256.); |
304 |
|
return(0); |
324 |
|
{ |
325 |
|
double vd; |
326 |
|
|
327 |
< |
if (fread(&vd, sizeof(double), 1, fp) != 1) |
327 |
> |
if (fread((char *)&vd, sizeof(double), 1, fp) != 1) |
328 |
|
return(-1); |
329 |
|
setcolor(col, vd, vd, vd); |
330 |
|
return(0); |
337 |
|
{ |
338 |
|
float vf; |
339 |
|
|
340 |
< |
if (fread(&vf, sizeof(float), 1, fp) != 1) |
340 |
> |
if (fread((char *)&vf, sizeof(float), 1, fp) != 1) |
341 |
|
return(-1); |
342 |
|
setcolor(col, vf, vf, vf); |
343 |
|
return(0); |
366 |
|
BYTE vb; |
367 |
|
double d; |
368 |
|
|
369 |
< |
if (fread(&vb, sizeof(BYTE), 1, fp) != 1) |
369 |
> |
if (fread((char *)&vb, sizeof(BYTE), 1, fp) != 1) |
370 |
|
return(-1); |
371 |
|
d = (vb+.5)/256.; |
372 |
|
setcolor(col, d, d, d); |
396 |
|
vf[0] = colval(col,RED); |
397 |
|
vf[1] = colval(col,GRN); |
398 |
|
vf[2] = colval(col,BLU); |
399 |
< |
fwrite(vf, sizeof(float), 3, fp); |
399 |
> |
fwrite((char *)vf, sizeof(float), 3, fp); |
400 |
|
|
401 |
|
return(ferror(fp) ? -1 : 0); |
402 |
|
} |
411 |
|
vd[0] = colval(col,RED); |
412 |
|
vd[1] = colval(col,GRN); |
413 |
|
vd[2] = colval(col,BLU); |
414 |
< |
fwrite(vd, sizeof(double), 3, fp); |
414 |
> |
fwrite((char *)vd, sizeof(double), 3, fp); |
415 |
|
|
416 |
|
return(ferror(fp) ? -1 : 0); |
417 |
|
} |
443 |
|
vb[1] = min(i,255); |
444 |
|
i = colval(col,BLU)*256.; |
445 |
|
vb[2] = min(i,255); |
446 |
< |
fwrite(vb, sizeof(BYTE), 3, fp); |
446 |
> |
fwrite((char *)vb, sizeof(BYTE), 3, fp); |
447 |
|
|
448 |
|
return(ferror(fp) ? -1 : 0); |
449 |
|
} |
466 |
|
float vf; |
467 |
|
|
468 |
|
vf = bright(col); |
469 |
< |
fwrite(&vf, sizeof(float), 1, fp); |
469 |
> |
fwrite((char *)&vf, sizeof(float), 1, fp); |
470 |
|
|
471 |
|
return(ferror(fp) ? -1 : 0); |
472 |
|
} |
479 |
|
double vd; |
480 |
|
|
481 |
|
vd = bright(col); |
482 |
< |
fwrite(&vd, sizeof(double), 1, fp); |
482 |
> |
fwrite((char *)&vd, sizeof(double), 1, fp); |
483 |
|
|
484 |
|
return(ferror(fp) ? -1 : 0); |
485 |
|
} |
504 |
|
|
505 |
|
i = bright(col)*256.; |
506 |
|
vb = min(i,255); |
507 |
< |
fwrite(&vb, sizeof(BYTE), 1, fp); |
507 |
> |
fwrite((char *)&vb, sizeof(BYTE), 1, fp); |
508 |
|
|
509 |
|
return(ferror(fp) ? -1 : 0); |
510 |
|
} |