protected internal override LayoutArea UpdateCurrentArea(LayoutResult overflowResult) { AreaBreak areaBreak = overflowResult != null && overflowResult.GetAreaBreak() != null?overflowResult.GetAreaBreak () : null; MoveToNextPage(); while (areaBreak != null && areaBreak.GetAreaType() == AreaBreakType.LAST_PAGE && currentPageNumber < document .GetPdfDocument().GetNumberOfPages()) { MoveToNextPage(); } PageSize customPageSize = areaBreak != null?areaBreak.GetPageSize() : null; while (document.GetPdfDocument().GetNumberOfPages() >= currentPageNumber && document.GetPdfDocument().GetPage (currentPageNumber).IsFlushed()) { currentPageNumber++; } PageSize lastPageSize = EnsureDocumentHasNPages(currentPageNumber, customPageSize); if (lastPageSize == null) { lastPageSize = new PageSize(document.GetPdfDocument().GetPage(currentPageNumber).GetPageSize()); } return(currentArea = new LayoutArea(currentPageNumber, document.GetPageEffectiveArea(lastPageSize))); }
protected internal override LayoutArea UpdateCurrentArea(LayoutResult overflowResult) { FlushWaitingDrawingElements(); LayoutTaggingHelper taggingHelper = this.GetProperty <LayoutTaggingHelper>(Property.TAGGING_HELPER); if (taggingHelper != null) { taggingHelper.ReleaseFinishedHints(); } AreaBreak areaBreak = overflowResult != null && overflowResult.GetAreaBreak() != null?overflowResult.GetAreaBreak () : null; if (areaBreak != null && areaBreak.GetAreaType() == AreaBreakType.LAST_PAGE) { while (currentPageNumber < document.GetPdfDocument().GetNumberOfPages()) { MoveToNextPage(); } } else { MoveToNextPage(); } PageSize customPageSize = areaBreak != null?areaBreak.GetPageSize() : null; while (document.GetPdfDocument().GetNumberOfPages() >= currentPageNumber && document.GetPdfDocument().GetPage (currentPageNumber).IsFlushed()) { currentPageNumber++; } PageSize lastPageSize = EnsureDocumentHasNPages(currentPageNumber, customPageSize); if (lastPageSize == null) { lastPageSize = new PageSize(document.GetPdfDocument().GetPage(currentPageNumber).GetTrimBox()); } return(currentArea = new RootLayoutArea(currentPageNumber, GetCurrentPageEffectiveArea(lastPageSize))); }