示例#1
0
 public void Test_Scale3X_UnmanagedBitmap()
 {
     using (var bitmapNew = new UnmanagedBitmap <Bgr32>(400, 400))
         using (var bitmapOld = BitmapFactory.CreateEmpty(400, 400, PixelFormat.Format32bppRgb, Color.White))
         {
             using (var graphics = Graphics.FromImage(bitmapOld))
                 using (var pen = new SolidBrush(Color.Blue))
                 {
                     graphics.FillRectangle(pen, new Rectangle(30, 30, 340, 340));
                 }
             bitmapNew.Span.Fill(new Bgr32 {
                 B = 255, G = 255, R = 255, Unused = 0
             });
             using (var bitmap = bitmapNew.AsBitmap())
                 using (var graphics = Graphics.FromImage(bitmap))
                     using (var pen = new SolidBrush(Color.Blue))
                     {
                         graphics.FillRectangle(pen, new Rectangle(30, 30, 340, 340));
                         using (var scaledUnmanagedBitmap = bitmapNew.Scale3X())
                             using (var scaledNewBitmap = scaledUnmanagedBitmap.AsBitmap())
                                 using (var scaledBitmap = bitmapOld.Scale3X())
                                 {
                                     scaledNewBitmap.Save(@"new3x.png", ImageFormat.Png);
                                     scaledBitmap.Save(@"old3x.png", ImageFormat.Png);
                                     Assert.True(scaledBitmap.IsEqualTo(scaledNewBitmap), "New Scale3X doesn't compare to old.");
                                 }
                     }
         }
 }
示例#2
0
 public void Scale3x_Unmanaged()
 {
     _unmanagedTestBitmap.Scale3X().Dispose();
 }