Author: spouliot
Date: 2007-05-28 13:21:07 -0400 (Mon, 28 May 2007)
New Revision: 78080
Modified:
trunk/mcs/class/System.Drawing/Test/System.Drawing/ChangeLog
trunk/mcs/class/System.Drawing/Test/System.Drawing/TestGraphics.cs
Log:
2007-05-28 Sebastien Pouliot <[EMAIL PROTECTED]>
* TestGraphics.cs: Add test cases for [Draw|Fill]Rectangles (#81737)
Modified: trunk/mcs/class/System.Drawing/Test/System.Drawing/ChangeLog
===================================================================
--- trunk/mcs/class/System.Drawing/Test/System.Drawing/ChangeLog
2007-05-28 17:10:44 UTC (rev 78079)
+++ trunk/mcs/class/System.Drawing/Test/System.Drawing/ChangeLog
2007-05-28 17:21:07 UTC (rev 78080)
@@ -1,3 +1,7 @@
+2007-05-28 Sebastien Pouliot <[EMAIL PROTECTED]>
+
+ * TestGraphics.cs: Add test cases for [Draw|Fill]Rectangles (#81737)
+
2007-05-25 Sebastien Pouliot <[EMAIL PROTECTED]>
* TestGraphics.cs: Avoid calling ImageAttributes.SetThreshold in test
Modified: trunk/mcs/class/System.Drawing/Test/System.Drawing/TestGraphics.cs
===================================================================
--- trunk/mcs/class/System.Drawing/Test/System.Drawing/TestGraphics.cs
2007-05-28 17:10:44 UTC (rev 78079)
+++ trunk/mcs/class/System.Drawing/Test/System.Drawing/TestGraphics.cs
2007-05-28 17:21:07 UTC (rev 78080)
@@ -1367,7 +1367,318 @@
}
}
+ // see bug #81737 for details
+ private Bitmap FillDrawRectangle (float width)
+ {
+ Bitmap bitmap = new Bitmap (20, 20);
+ using (Graphics g = Graphics.FromImage (bitmap)) {
+ g.Clear (Color.Red);
+ Rectangle rect = new Rectangle (5, 5, 10, 10);
+ g.FillRectangle (Brushes.Green, rect);
+ if (width >= 0) {
+ using (Pen pen = new Pen (Color.Blue,
width)) {
+ g.DrawRectangle (pen, rect);
+ }
+ } else {
+ g.DrawRectangle (Pens.Blue, rect);
+ }
+ }
+ return bitmap;
+ }
+
[Test]
+ public void FillDrawRectangle_Width_Default ()
+ {
+ // default pen size
+ using (Bitmap bitmap = FillDrawRectangle
(Single.MinValue)) {
+ // NW
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (4, 4).ToArgb (), "4,4");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (5, 5).ToArgb (), "5,5");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (6, 6).ToArgb (), "6,6");
+ // N
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (9, 4).ToArgb (), "9,4");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 5).ToArgb (), "9,5");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (9, 6).ToArgb (), "9,6");
+ // NE
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (16, 4).ToArgb (), "16,4");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 5).ToArgb (), "15,5");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (14, 6).ToArgb (), "14,6");
+ // E
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (16, 9).ToArgb (), "16,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 9).ToArgb (), "15,9");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (14, 9).ToArgb (), "14,9");
+ // SE
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (16, 16).ToArgb (), "16,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 15).ToArgb (), "15,15");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (14, 14).ToArgb (), "14,14");
+ // S
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (9, 16).ToArgb (), "9,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 15).ToArgb (), "9,15");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (9, 14).ToArgb (), "9,14");
+ // SW
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (4, 16).ToArgb (), "4,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (5, 15).ToArgb (), "5,15");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (6, 14).ToArgb (), "6,14");
+ // W
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (4, 9).ToArgb (), "4,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (5, 9).ToArgb (), "5,9");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (6, 9).ToArgb (), "6,9");
+ }
+ }
+
+ [Test]
+ [Category ("NotWorking")] // libgdiplus is one pixel off (+1,+1)
+ public void FillDrawRectangle_Width_2 ()
+ {
+ // even pen size
+ using (Bitmap bitmap = FillDrawRectangle (2.0f)) {
+ bitmap.Save (@"FillDrawRectangle_Width_2.bmp");
+ // NW
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (3, 3).ToArgb (), "3,3");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (4, 4).ToArgb (), "4,4");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (5, 5).ToArgb (), "5,5");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (6, 6).ToArgb (), "6,6");
+ // N
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (9, 3).ToArgb (), "9,3");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 4).ToArgb (), "9,4");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 5).ToArgb (), "9,5");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (9, 6).ToArgb (), "9,6");
+ // NE
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (16, 3).ToArgb (), "16,3");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 4).ToArgb (), "15,4");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (14, 5).ToArgb (), "14,5");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (13, 6).ToArgb (), "13,6");
+ // E
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (16, 9).ToArgb (), "16,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 9).ToArgb (), "15,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (14, 9).ToArgb (), "14,9");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (13, 9).ToArgb (), "13,9");
+ // SE
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (16, 16).ToArgb (), "16,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 15).ToArgb (), "15,15");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (14, 14).ToArgb (), "14,14");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (13, 13).ToArgb (), "13,13");
+ // S
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (9, 16).ToArgb (), "9,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 15).ToArgb (), "9,15");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 14).ToArgb (), "9,14");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (9, 13).ToArgb (), "9,13");
+ // SW
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (3, 16).ToArgb (), "3,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (4, 15).ToArgb (), "4,15");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (5, 14).ToArgb (), "5,14");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (6, 13).ToArgb (), "6,13");
+ // W
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (3, 9).ToArgb (), "3,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (4, 9).ToArgb (), "4,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (5, 9).ToArgb (), "5,9");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (6, 9).ToArgb (), "6,9");
+ }
+ }
+
+ [Test]
+ public void FillDrawRectangle_Width_3 ()
+ {
+ // odd pen size
+ using (Bitmap bitmap = FillDrawRectangle (3.0f)) {
+ // NW
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (3, 3).ToArgb (), "3,3");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (4, 4).ToArgb (), "4,4");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (5, 5).ToArgb (), "5,5");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (6, 6).ToArgb (), "6,6");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (7, 7).ToArgb (), "7,7");
+ // N
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (9, 3).ToArgb (), "9,3");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 4).ToArgb (), "9,4");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 5).ToArgb (), "9,5");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 6).ToArgb (), "9,6");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (9, 7).ToArgb (), "9,7");
+ // NE
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (17, 3).ToArgb (), "17,3");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (16, 4).ToArgb (), "16,4");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 5).ToArgb (), "15,5");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (14, 6).ToArgb (), "14,6");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (13, 7).ToArgb (), "13,7");
+ // E
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (17, 9).ToArgb (), "17,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (16, 9).ToArgb (), "16,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 9).ToArgb (), "15,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (14, 9).ToArgb (), "14,9");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (13, 9).ToArgb (), "13,9");
+ // SE
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (17, 17).ToArgb (), "17,17");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (16, 16).ToArgb (), "16,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 15).ToArgb (), "15,15");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (14, 14).ToArgb (), "14,14");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (13, 13).ToArgb (), "13,13");
+ // S
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (9, 17).ToArgb (), "9,17");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 16).ToArgb (), "9,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 15).ToArgb (), "9,15");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 14).ToArgb (), "9,14");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (9, 13).ToArgb (), "9,13");
+ // SW
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (3, 17).ToArgb (), "3,17");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (4, 16).ToArgb (), "4,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (5, 15).ToArgb (), "5,15");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (6, 14).ToArgb (), "6,14");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (7, 13).ToArgb (), "7,13");
+ // W
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (3, 9).ToArgb (), "3,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (4, 9).ToArgb (), "4,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (5, 9).ToArgb (), "5,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (6, 9).ToArgb (), "6,9");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (7, 9).ToArgb (), "7,9");
+ }
+ }
+
+ // reverse, draw the fill over
+ private Bitmap DrawFillRectangle (float width)
+ {
+ Bitmap bitmap = new Bitmap (20, 20);
+ using (Graphics g = Graphics.FromImage (bitmap)) {
+ g.Clear (Color.Red);
+ Rectangle rect = new Rectangle (5, 5, 10, 10);
+ if (width >= 0) {
+ using (Pen pen = new Pen (Color.Blue,
width)) {
+ g.DrawRectangle (pen, rect);
+ }
+ } else {
+ g.DrawRectangle (Pens.Blue, rect);
+ }
+ g.FillRectangle (Brushes.Green, rect);
+ }
+ return bitmap;
+ }
+
+ [Test]
+ public void DrawFillRectangle_Width_Default ()
+ {
+ // default pen size
+ using (Bitmap bitmap = DrawFillRectangle
(Single.MinValue)) {
+ // NW - no blue border
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (4, 4).ToArgb (), "4,4");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (5, 5).ToArgb (), "5,5");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (6, 6).ToArgb (), "6,6");
+ // N - no blue border
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (9, 4).ToArgb (), "9,4");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (9, 5).ToArgb (), "9,5");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (9, 6).ToArgb (), "9,6");
+ // NE
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (16, 4).ToArgb (), "16,4");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 5).ToArgb (), "15,5");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (14, 6).ToArgb (), "14,6");
+ // E
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (16, 9).ToArgb (), "16,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 9).ToArgb (), "15,9");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (14, 9).ToArgb (), "14,9");
+ // SE
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (16, 16).ToArgb (), "16,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 15).ToArgb (), "15,15");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (14, 14).ToArgb (), "14,14");
+ // S
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (9, 16).ToArgb (), "9,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 15).ToArgb (), "9,15");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (9, 14).ToArgb (), "9,14");
+ // SW
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (4, 16).ToArgb (), "4,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (5, 15).ToArgb (), "5,15");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (6, 14).ToArgb (), "6,14");
+ // W - no blue border
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (4, 9).ToArgb (), "4,9");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (5, 9).ToArgb (), "5,9");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (6, 9).ToArgb (), "6,9");
+ }
+ }
+
+ [Test]
+ [Category ("NotWorking")] // libgdiplus is one pixel off (+1,+1)
+ public void DrawFillRectangle_Width_2 ()
+ {
+ // even pen size
+ using (Bitmap bitmap = DrawFillRectangle (2.0f)) {
+ // looks like a one pixel border - but enlarged
+ // NW
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (3, 3).ToArgb (), "3,3");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (4, 4).ToArgb (), "4,4");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (5, 5).ToArgb (), "5,5");
+ // N
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (9, 3).ToArgb (), "9,3");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 4).ToArgb (), "9,4");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (9, 5).ToArgb (), "9,5");
+ // NE
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (16, 3).ToArgb (), "16,3");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 4).ToArgb (), "15,4");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (14, 5).ToArgb (), "14,5");
+ // E
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (16, 9).ToArgb (), "16,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 9).ToArgb (), "15,9");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (14, 9).ToArgb (), "14,9");
+ // SE
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (16, 16).ToArgb (), "16,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 15).ToArgb (), "15,15");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (14, 14).ToArgb (), "14,14");
+ // S
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (9, 16).ToArgb (), "9,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 15).ToArgb (), "9,15");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (9, 14).ToArgb (), "9,14");
+ // SW
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (3, 16).ToArgb (), "4,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (4, 15).ToArgb (), "5,15");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (5, 14).ToArgb (), "6,14");
+ // W
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (3, 9).ToArgb (), "3,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (4, 9).ToArgb (), "4,9");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (5, 9).ToArgb (), "5,9");
+ }
+ }
+
+ [Test]
+ public void DrawFillRectangle_Width_3 ()
+ {
+ // odd pen size
+ using (Bitmap bitmap = DrawFillRectangle (3.0f)) {
+ // NW
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (3, 3).ToArgb (), "3,3");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (4, 4).ToArgb (), "4,4");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (5, 5).ToArgb (), "5,5");
+ // N
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (9, 3).ToArgb (), "9,3");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 4).ToArgb (), "9,4");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (9, 5).ToArgb (), "9,5");
+ // NE
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (17, 3).ToArgb (), "17,3");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (16, 4).ToArgb (), "16,4");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 4).ToArgb (), "15,4");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (14, 5).ToArgb (), "14,5");
+ // E
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (17, 9).ToArgb (), "17,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (16, 9).ToArgb (), "16,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 9).ToArgb (), "15,9");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (14, 9).ToArgb (), "14,9");
+ // SE
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (17, 17).ToArgb (), "17,17");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (16, 16).ToArgb (), "16,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (15, 15).ToArgb (), "15,15");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (14, 14).ToArgb (), "14,14");
+ // S
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (9, 17).ToArgb (), "9,17");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 16).ToArgb (), "9,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (9, 15).ToArgb (), "9,15");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (9, 14).ToArgb (), "9,14");
+ // SW
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (3, 17).ToArgb (), "3,17");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (4, 16).ToArgb (), "4,16");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (5, 15).ToArgb (), "5,15");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (6, 14).ToArgb (), "6,14");
+ // W
+ Assert.AreEqual (0xFFFF0000, (uint)
bitmap.GetPixel (3, 9).ToArgb (), "3,9");
+ Assert.AreEqual (0xFF0000FF, (uint)
bitmap.GetPixel (4, 9).ToArgb (), "4,9");
+ Assert.AreEqual (0xFF008000, (uint)
bitmap.GetPixel (5, 9).ToArgb (), "5,9");
+ }
+ }
+
+ [Test]
public void MeasureString_StringFont ()
{
using (Bitmap bitmap = new Bitmap (20, 20)) {
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches