private static Size TestComputeLevelSize(Size itemImageSize, int levelNumber) { var settings = new Settings { ItemImageSize = itemImageSize, }; var dzi = new DeepZoomImage(settings); return(dzi.ComputeLevelSize(levelNumber)); }
public void ComputeLevelSize_PowerOfTwo() { Assert.AreEqual(new Size(1024, 512), DeepZoomImage.ComputeLevelSize(PowerOfTwoSize, 11)); Assert.AreEqual(new Size(1024, 512), DeepZoomImage.ComputeLevelSize(PowerOfTwoSize, 10)); Assert.AreEqual(new Size(512, 256), DeepZoomImage.ComputeLevelSize(PowerOfTwoSize, 9)); Assert.AreEqual(new Size(256, 128), DeepZoomImage.ComputeLevelSize(PowerOfTwoSize, 8)); Assert.AreEqual(new Size(128, 64), DeepZoomImage.ComputeLevelSize(PowerOfTwoSize, 7)); Assert.AreEqual(new Size(64, 32), DeepZoomImage.ComputeLevelSize(PowerOfTwoSize, 6)); Assert.AreEqual(new Size(32, 16), DeepZoomImage.ComputeLevelSize(PowerOfTwoSize, 5)); Assert.AreEqual(new Size(16, 8), DeepZoomImage.ComputeLevelSize(PowerOfTwoSize, 4)); Assert.AreEqual(new Size(8, 4), DeepZoomImage.ComputeLevelSize(PowerOfTwoSize, 3)); Assert.AreEqual(new Size(4, 2), DeepZoomImage.ComputeLevelSize(PowerOfTwoSize, 2)); Assert.AreEqual(new Size(2, 1), DeepZoomImage.ComputeLevelSize(PowerOfTwoSize, 1)); Assert.AreEqual(new Size(1, 1), DeepZoomImage.ComputeLevelSize(PowerOfTwoSize, 0)); }
public void ComputeLevelSize_SquareLogo() { Assert.AreEqual(new Size(700, 700), DeepZoomImage.ComputeLevelSize(SquareLogoSize, 11)); Assert.AreEqual(new Size(700, 700), DeepZoomImage.ComputeLevelSize(SquareLogoSize, 10)); Assert.AreEqual(new Size(350, 350), DeepZoomImage.ComputeLevelSize(SquareLogoSize, 9)); Assert.AreEqual(new Size(175, 175), DeepZoomImage.ComputeLevelSize(SquareLogoSize, 8)); Assert.AreEqual(new Size(88, 88), DeepZoomImage.ComputeLevelSize(SquareLogoSize, 7)); Assert.AreEqual(new Size(44, 44), DeepZoomImage.ComputeLevelSize(SquareLogoSize, 6)); Assert.AreEqual(new Size(22, 22), DeepZoomImage.ComputeLevelSize(SquareLogoSize, 5)); Assert.AreEqual(new Size(11, 11), DeepZoomImage.ComputeLevelSize(SquareLogoSize, 4)); Assert.AreEqual(new Size(6, 6), DeepZoomImage.ComputeLevelSize(SquareLogoSize, 3)); Assert.AreEqual(new Size(3, 3), DeepZoomImage.ComputeLevelSize(SquareLogoSize, 2)); Assert.AreEqual(new Size(2, 2), DeepZoomImage.ComputeLevelSize(SquareLogoSize, 1)); Assert.AreEqual(new Size(1, 1), DeepZoomImage.ComputeLevelSize(SquareLogoSize, 0)); }
public void ComputeLevelSize_Typical() { Assert.AreEqual(new Size(1200, 1500), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 12)); Assert.AreEqual(new Size(1200, 1500), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 11)); Assert.AreEqual(new Size(600, 750), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 10)); Assert.AreEqual(new Size(300, 375), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 9)); Assert.AreEqual(new Size(150, 188), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 8)); Assert.AreEqual(new Size(75, 94), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 7)); Assert.AreEqual(new Size(38, 47), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 6)); Assert.AreEqual(new Size(19, 24), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 5)); Assert.AreEqual(new Size(10, 12), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 4)); Assert.AreEqual(new Size(5, 6), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 3)); Assert.AreEqual(new Size(3, 3), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 2)); Assert.AreEqual(new Size(2, 2), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 1)); Assert.AreEqual(new Size(1, 1), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 0)); }
public void Slice_SquareLogo() { Assert.AreEqual(10, DeepZoomImage.DetermineMaximumLevel(SquareLogoSize)); using (var sourceBitmap = new Bitmap(SquareLogoSize.Width, SquareLogoSize.Height)) { var tester = new Action <int, IEnumerable <Size> > ((level, expectedSliceSizes) => { var levelSize = DeepZoomImage.ComputeLevelSize(SquareLogoSize, level); var tiles = DeepZoomImage.ComputeTiles(levelSize, 254, 1); var slices = DeepZoomImage.Slice(sourceBitmap, tiles); var actualSliceSizes = slices.Map(pair => pair.First.Size); EnumerableExtensions.EnumerateSame(expectedSliceSizes, actualSliceSizes); } ); tester(10, new[] { new Size(255, 255), new Size(255, 256), new Size(255, 193), new Size(256, 255), new Size(256, 256), new Size(256, 193), new Size(193, 255), new Size(193, 256), new Size(193, 193), } ); tester(9, new[] { new Size(255, 255), new Size(255, 97), new Size(97, 255), new Size(97, 97), } ); tester(8, new[] { new Size(175, 175) }); tester(7, new[] { new Size(88, 88) }); tester(6, new[] { new Size(44, 44) }); tester(5, new[] { new Size(22, 22) }); tester(4, new[] { new Size(11, 11) }); tester(3, new[] { new Size(6, 6) }); tester(2, new[] { new Size(3, 3) }); tester(1, new[] { new Size(2, 2) }); tester(0, new[] { new Size(1, 1) }); } }
private static Size TestComputeLevelSize(Size itemImageSize, int levelNumber) { var settings = new Settings { ItemImageSize = itemImageSize, }; var dzi = new DeepZoomImage (settings); return dzi.ComputeLevelSize (levelNumber); }
public void ComputeLevelSize_Base() { Assert.AreEqual(new Size(1, 1), DeepZoomImage.ComputeLevelSize(PortraitImageSize, 0)); }