Ejemplo n.º 1
0
        public PdfSourceRect GetUnionRectangleWithNeighbour(int pageNumber)
        {
            CalculateCanvas();
            PdfSourceRect pageRect = documentManager.GetPageRectGuess(pageNumber);
            PdfSourceRect pageRect2;

            if (PdfUtils.HorizontalPagePosition(PageLayoutMode, pageNumber) == 1)
            {
                pageRect2 = documentManager.GetPageRectGuess(pageNumber - 1);
                pageRect  = pageRect.unionDouble(pageRect2);
            }
            else if (PdfUtils.HorizontalPagePosition(PageLayoutMode, pageNumber) == -1 && pageNumber + 1 < PageCount)
            {
                //unify with right neighbour if it exists
                pageRect2 = documentManager.GetPageRectGuess(pageNumber + 1);
                pageRect  = pageRect.unionDouble(pageRect2);
            }
            else
            {
                pageRect = pageRect.Clone();
            }
            pageRect.dX      -= BorderSize;
            pageRect.dWidth  += 2.0 * BorderSize;
            pageRect.dY      -= BorderSize;
            pageRect.dHeight += 2.0 * BorderSize;

            return(pageRect);
        }