]> granicus.if.org Git - php/commitdiff
- MFH
authorPierre Joye <pajoye@php.net>
Wed, 2 Jul 2003 11:24:52 +0000 (11:24 +0000)
committerPierre Joye <pajoye@php.net>
Wed, 2 Jul 2003 11:24:52 +0000 (11:24 +0000)
ext/gd/libgd/gd.c

index fba4d1841ffda9fab8535fa75aaa25d1b53a3493..a2f6c0c03ea4a351514fb1a4a74e7654ea8c1815 100644 (file)
@@ -2075,9 +2075,12 @@ void gdImageCopyMerge (gdImagePtr dst, gdImagePtr src, int dstX, int dstY, int s
                        } else {
                                dc = gdImageGetPixel(dst, tox, toy);
 
-                               ncR = (int)(gdImageRed (src, c) * (pct / 100.0f) + ((100 - pct) / 100.0f));
-                               ncG = (int)(gdImageGreen (src, c) * (pct / 100.0f) + ((100 - pct) / 100.0f));
-                               ncB = (int)(gdImageBlue (src, c) * (pct / 100.0f) + ((100 - pct) / 100.0f));
+                                ncR = (int)gdImageRed (src, c) * (pct / 100.0) 
+                                        + gdImageRed (dst, dc) * ((100 - pct) / 100.0);
+                                ncG = (int)gdImageGreen (src, c) * (pct / 100.0) 
+                                        + (int)gdImageGreen (dst, dc) * ((100 - pct) / 100.0);
+                                ncB = (int)gdImageBlue (src, c) * (pct / 100.0) 
+                                        + gdImageBlue (dst, dc) * ((100 - pct) / 100.0);
 
                                /* Find a reasonable color */
                                nc = gdImageColorResolve (dst, ncR, ncG, ncB);