예제 #1
0
        public void Intersect()
        {
            PdfRectangle rectangle  = new PdfRectangle(10, 10, 20, 20);
            PdfRectangle rectangle1 = new PdfRectangle(149.95376d, 687.13456d, 451.73539d, 1478.4997d);

            Assert.Null(rectangle.Intersect(rectangle1));
            Assert.Equal(rectangle1, rectangle1.Intersect(rectangle1));

            PdfRectangle rectangle2 = new PdfRectangle(50, 687.13456d, 350, 1478.4997d);

            Assert.Equal(new PdfRectangle(149.95376d, 687.13456d, 350, 1478.4997d), rectangle1.Intersect(rectangle2));

            PdfRectangle rectangle3 = new PdfRectangle(200, 800, 350, 1200);

            Assert.Equal(rectangle3, rectangle1.Intersect(rectangle3));
        }
예제 #2
0
 private static double OverlappingArea(PdfRectangle rectangle1, PdfRectangle rectangle2)
 {
     var intersect = rectangle1.Intersect(rectangle2);
     if (intersect.HasValue)
     {
         return intersect.Value.Area;
     }
     return 0;
 }