From b9dce69b28870cb1036c6f91870cd4a207836c70 Mon Sep 17 00:00:00 2001 From: ap Date: Wed, 2 Aug 2006 20:32:45 +0000 Subject: [PATCH] Fix by Mitz Pettel, reviewed by Darin. - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3438 incorrect display of transparent 1x1 PNGs Test: fast/replaced/image-solid-color-with-alpha.html * platform/mac/ImageMac.mm: (WebCore::Image::checkForSolidColor): Changed to divide each color component by the alpha component. You need to do that since the bitmap context has premultiplied alpha but m_solidColor should be non-premultiplied. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15758 268f45cc-cd09-0410-ab3c-d52691b4dbfc --- LayoutTests/ChangeLog | 16 +++++++++++ ...e-solid-color-with-alpha-expected.checksum | 1 + .../image-solid-color-with-alpha-expected.png | Bin 0 -> 12564 bytes .../image-solid-color-with-alpha-expected.txt | 22 +++++++++++++++ .../image-solid-color-with-alpha.html | 4 +++ .../fast/replaced/img-1x1-expected.checksum | 1 - .../fast/replaced/img-1x1-expected.png | Bin 14989 -> 0 bytes .../fast/replaced/img-1x1-expected.txt | 25 ------------------ LayoutTests/fast/replaced/img-1x1.html | 11 -------- WebCore/ChangeLog | 14 ++++++++++ WebCore/platform/mac/ImageMac.mm | 5 +++- 11 files changed, 61 insertions(+), 38 deletions(-) create mode 100644 LayoutTests/fast/replaced/image-solid-color-with-alpha-expected.checksum create mode 100644 LayoutTests/fast/replaced/image-solid-color-with-alpha-expected.png create mode 100644 LayoutTests/fast/replaced/image-solid-color-with-alpha-expected.txt create mode 100644 LayoutTests/fast/replaced/image-solid-color-with-alpha.html delete mode 100644 LayoutTests/fast/replaced/img-1x1-expected.checksum delete mode 100644 LayoutTests/fast/replaced/img-1x1-expected.png delete mode 100644 LayoutTests/fast/replaced/img-1x1-expected.txt delete mode 100644 LayoutTests/fast/replaced/img-1x1.html diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog index c8c50658ed3a..27997b83e6db 100644 --- a/LayoutTests/ChangeLog +++ b/LayoutTests/ChangeLog @@ -1,3 +1,19 @@ +2006-08-02 Alexey Proskuryakov + + Reviewed by Darin. + + - pixel test for http://bugzilla.opendarwin.org/show_bug.cgi?id=3438 + incorrect display of transparent 1x1 PNGs + + * fast/replaced/image-solid-color-with-alpha-expected.checksum: Added. + * fast/replaced/image-solid-color-with-alpha-expected.png: Added. + * fast/replaced/image-solid-color-with-alpha-expected.txt: Added. + * fast/replaced/image-solid-color-with-alpha.html: Added. + * fast/replaced/img-1x1-expected.checksum: Removed. + * fast/replaced/img-1x1-expected.png: Removed. + * fast/replaced/img-1x1-expected.txt: Removed. + * fast/replaced/img-1x1.html: Removed. + 2006-08-01 Darin Adler - updated a test affected by changes to the DumpRenderTree tool diff --git a/LayoutTests/fast/replaced/image-solid-color-with-alpha-expected.checksum b/LayoutTests/fast/replaced/image-solid-color-with-alpha-expected.checksum new file mode 100644 index 000000000000..9805ab6aaea5 --- /dev/null +++ b/LayoutTests/fast/replaced/image-solid-color-with-alpha-expected.checksum @@ -0,0 +1 @@ +31bbbc113d0d41bd5516b09d1973480f \ No newline at end of file diff --git a/LayoutTests/fast/replaced/image-solid-color-with-alpha-expected.png b/LayoutTests/fast/replaced/image-solid-color-with-alpha-expected.png new file mode 100644 index 0000000000000000000000000000000000000000..b49e451500e331a338719f208c7a41ce82cc0687 GIT binary patch literal 12564 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 RgKt2Y8d(~a|Mi!@{Ra;jF=PM$ literal 0 HcmV?d00001 diff --git a/LayoutTests/fast/replaced/image-solid-color-with-alpha-expected.txt b/LayoutTests/fast/replaced/image-solid-color-with-alpha-expected.txt new file mode 100644 index 000000000000..8ec84f21f624 --- /dev/null +++ b/LayoutTests/fast/replaced/image-solid-color-with-alpha-expected.txt @@ -0,0 +1,22 @@ +layer at (0,0) size 800x600 + RenderView at (0,0) size 800x600 +layer at (0,0) size 800x600 + RenderBlock {HTML} at (0,0) size 800x600 + RenderBody {BODY} at (8,8) size 784x584 + RenderBlock {P} at (0,0) size 784x18 + RenderText {#text} at (0,0) size 53x18 + text run at (0,0) width 53: "Test for " + RenderInline {A} at (0,0) size 60x18 [color=#0000EE] + RenderText {#text} at (53,0) size 60x18 + text run at (53,0) width 60: "bug 3438" + RenderText {#text} at (113,0) size 202x18 + text run at (113,0) width 202: ": rendering of 1x1 PNG images." + RenderBlock {P} at (0,34) size 784x18 + RenderText {#text} at (0,0) size 283x18 + text run at (0,0) width 283: "The two squares should have the same color:" + RenderBlock (anonymous) at (0,68) size 784x54 + RenderImage {IMG} at (0,0) size 50x50 + RenderText {#text} at (50,36) size 4x18 + text run at (50,36) width 4: " " + RenderImage {IMG} at (54,0) size 50x50 + RenderText {#text} at (0,0) size 0x0 diff --git a/LayoutTests/fast/replaced/image-solid-color-with-alpha.html b/LayoutTests/fast/replaced/image-solid-color-with-alpha.html new file mode 100644 index 000000000000..2ddcdb87a030 --- /dev/null +++ b/LayoutTests/fast/replaced/image-solid-color-with-alpha.html @@ -0,0 +1,4 @@ +

Test for bug 3438: rendering of 1x1 PNG images.

+

The two squares should have the same color:

+ + diff --git a/LayoutTests/fast/replaced/img-1x1-expected.checksum b/LayoutTests/fast/replaced/img-1x1-expected.checksum deleted file mode 100644 index 70d94a78081b..000000000000 --- a/LayoutTests/fast/replaced/img-1x1-expected.checksum +++ /dev/null @@ -1 +0,0 @@ -856eb8e8e0ee4834a3f069e5e710f8b6 \ No newline at end of file diff --git a/LayoutTests/fast/replaced/img-1x1-expected.png b/LayoutTests/fast/replaced/img-1x1-expected.png deleted file mode 100644 index 1659482a417cd1647590360cfa45556ec5705c8d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14989 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 for bug 3438: rendering of 1x1 PNG images.

- - - - - -
Should be uniform color (comparing PNG with GIF and JPEG): - - - -
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog index 6ddb6dc05c83..442e525ebbd7 100644 --- a/WebCore/ChangeLog +++ b/WebCore/ChangeLog @@ -1,3 +1,17 @@ +2006-08-02 Mitz Pettel + + Reviewed by Darin. + + - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3438 + incorrect display of transparent 1x1 PNGs + + Test: fast/replaced/image-solid-color-with-alpha.html + + * platform/mac/ImageMac.mm: + (WebCore::Image::checkForSolidColor): Changed to divide each color component + by the alpha component. You need to do that since the bitmap context has + premultiplied alpha but m_solidColor should be non-premultiplied. + 2006-08-02 Adam Roben Reviewed by Brady. diff --git a/WebCore/platform/mac/ImageMac.mm b/WebCore/platform/mac/ImageMac.mm index 9250d82f7243..9e651ae8f549 100644 --- a/WebCore/platform/mac/ImageMac.mm +++ b/WebCore/platform/mac/ImageMac.mm @@ -118,7 +118,10 @@ void Image::checkForSolidColor() GraphicsContext(bmap).setCompositeOperation(CompositeCopy); CGRect dst = { {0, 0}, {1, 1} }; CGContextDrawImage(bmap, dst, image); - m_solidColor = Color(int(pixel[0] * 255), int(pixel[1] * 255), int(pixel[2] * 255), int(pixel[3] * 255)); + if (pixel[3] == 0) + m_solidColor = Color(0, 0, 0, 0); + else + m_solidColor = Color(int(pixel[0] / pixel[3] * 255), int(pixel[1] / pixel[3] * 255), int(pixel[2] / pixel[3] * 255), int(pixel[3] * 255)); m_isSolidColor = true; CFRelease(bmap); } -- 2.36.0