Fixes after merge
This commit is contained in:
parent
9194440e3b
commit
023089c0e4
|
|
@ -25,7 +25,7 @@
|
|||
#define Y_TO_PS(y) ( (y+xctx->yorigin)* xctx->mooz )
|
||||
|
||||
/* FIXME This must be investigated, without some fflushes the ps file is corrupted */
|
||||
#define FFLUSH_PS
|
||||
//#define FFLUSH_PS
|
||||
|
||||
#if 0
|
||||
* /* FIXME: overflow check. Not used, BTW */
|
||||
|
|
@ -188,6 +188,8 @@ void ps_drawPNG(xRect* r, double x1, double y1, double x2, double y2, int rot, i
|
|||
unsigned char png_b = png_data[i + 2];
|
||||
unsigned char png_a = png_data[i + 3];
|
||||
|
||||
double ainv=((double)(0xFF - png_a)) / ((double)(0xFF));
|
||||
|
||||
if(invertImage)
|
||||
{
|
||||
png_data[i + 0] = (0xFF-png_r) + (unsigned char)((double)BG_r * ainv);
|
||||
|
|
@ -216,13 +218,32 @@ void ps_drawPNG(xRect* r, double x1, double y1, double x2, double y2, int rot, i
|
|||
* fclose(fp);
|
||||
*/
|
||||
hexEncodedJPG = bin2hex(jpgData, fileSize);
|
||||
fprintf(fd, "gsave\n");
|
||||
fprintf(fd, "gsave\n");
|
||||
fprintf(fd, "%g %g translate\n", X_TO_PS(x1), Y_TO_PS(y1));
|
||||
fprintf(fd, "%g %g scale\n", X_TO_PS(x2) - X_TO_PS(x1), Y_TO_PS(y2) - Y_TO_PS(y1));
|
||||
fprintf(fd, "%d\n", png_size_x);
|
||||
fprintf(fd, "%d\n", png_size_y);
|
||||
if(rot==1) fprintf(fd, "90 rotate\n");
|
||||
if(rot==2) fprintf(fd, "180 rotate\n");
|
||||
if(rot==3) fprintf(fd, "270 rotate\n");
|
||||
fprintf(fd, "%g %g scale\n", (X_TO_PS(x2) - X_TO_PS(x1))*0.97, (Y_TO_PS(y2) - Y_TO_PS(y1))*0.97);
|
||||
|
||||
fprintf(fd, "%g\n", (double)png_size_x);
|
||||
fprintf(fd, "%g\n", (double)png_size_y);
|
||||
fprintf(fd, "8\n");
|
||||
fprintf(fd, "[%d 0 0 %d 0 0]\n", png_size_x, png_size_y);
|
||||
if(!flip)
|
||||
{
|
||||
if(rot==1) fprintf(fd, "[%g 0 0 %g 0 %g]\n", (double)png_size_y, (double)png_size_x, (double)png_size_y);
|
||||
else if(rot==2) fprintf(fd, "[%g 0 0 %g %g %g]\n", (double)png_size_x, (double)png_size_y, (double)png_size_x, (double)png_size_y);
|
||||
else if(rot==3) fprintf(fd, "[%g 0 0 %g %g 0]\n", (double)png_size_y, (double)png_size_x, (double)png_size_x);
|
||||
else fprintf(fd, "[%g 0 0 %g 0 0]\n", (double)png_size_x, (double)png_size_y);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(rot==1) fprintf(fd, "[%g 0 0 %g %g %g]\n", -(double)png_size_y, (double)png_size_x, (double)png_size_x, (double)png_size_y);
|
||||
else if(rot==2) fprintf(fd, "[%g 0 0 %g 0 %g]\n", -(double)png_size_x, (double)png_size_y, (double)png_size_y);
|
||||
else if(rot==3) fprintf(fd, "[%g 0 0 %g 0 0]\n", -(double)png_size_y, (double)png_size_x);
|
||||
else fprintf(fd, "[%g 0 0 %g %g 0]\n", -(double)png_size_x, (double)png_size_y, (double)png_size_x);
|
||||
}
|
||||
|
||||
|
||||
fprintf(fd, "(%s)\n", hexEncodedJPG);
|
||||
fprintf(fd, "/ASCIIHexDecode\n");
|
||||
fprintf(fd, "filter\n");
|
||||
|
|
@ -233,11 +254,10 @@ void ps_drawPNG(xRect* r, double x1, double y1, double x2, double y2, int rot, i
|
|||
fprintf(fd, "3\n");
|
||||
fprintf(fd, "colorimage\n");
|
||||
fprintf(fd, "grestore\n");
|
||||
#ifdef FFLUSH_PS /* FIXME: why is this needed? */
|
||||
fflush(fd);
|
||||
#endif
|
||||
|
||||
my_free(1663, &hexEncodedJPG);
|
||||
free(jpgData);
|
||||
fflush(fd);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -345,12 +365,11 @@ void ps_embedded_graph(xRect* r, double rx1, double ry1, double rx2, double ry2)
|
|||
fprintf(fd, "3\n");
|
||||
fprintf(fd, "colorimage\n");
|
||||
fprintf(fd, "grestore\n");
|
||||
#ifdef FFLUSH_PS /* FIXME: why is this needed? */
|
||||
fflush(fd);
|
||||
#endif
|
||||
my_free(1666, &hexEncodedJPG);
|
||||
free(jpgData);
|
||||
fflush(fd);
|
||||
#endif
|
||||
|
||||
}
|
||||
static void set_lw(void)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue