]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/image/image.cpp
Fixes to allow compilation with no wchar_t (djgpp probably has a real wchar_t
[wxWidgets.git] / samples / image / image.cpp
index 597314a38233e82c18d58cd5bba465201e3b7a8d..7bfe2db778bfb71e12cd5ee0f075341acd8aba2e 100644 (file)
@@ -319,10 +319,12 @@ public:
 
             for ( int x = 0; x < REAL_SIZE; ++x )
             {
 
             for ( int x = 0; x < REAL_SIZE; ++x )
             {
-                p.Red() = r;
-                p.Green() = g;
-                p.Blue() = b;
-                p.Alpha() = (Data::Iterator::ChannelType)((x*255.)/REAL_SIZE);
+                // note that RGB must be premultiplied by alpha
+                unsigned a = (Data::Iterator::ChannelType)((x*255.)/REAL_SIZE);
+                p.Red() = r * a / 256;
+                p.Green() = g * a / 256;
+                p.Blue() = b * a / 256;
+                p.Alpha() = a;
 
                 ++p; // same as p.OffsetX(1)
             }
 
                 ++p; // same as p.OffsetX(1)
             }