import { PdfGrid } from '../pdf-grid'; import { RectangleF } from './../../../drawing/pdf-drawing'; import { PdfLayoutResult, PdfLayoutParams, PdfLayoutFormat, ElementLayouter } from './../../../graphics/figures/base/element-layouter'; import { PdfGraphics } from './../../../graphics/pdf-graphics'; import { PdfPage } from './../../../pages/pdf-page'; import { PdfGridRow } from '../pdf-grid-row'; import { PdfGridCellStyle } from '../styles/style'; /** * Class `lay outing the text`. * */ export declare class PdfGridLayouter extends ElementLayouter { /** * `Text` data. * @private */ private text; /** * Pdf `font`. * @private */ private font; /** * String `format`. * @private */ private format; /** * `Size` of the text. * @private */ private gridColumns; /** * @hidden * @private */ private gridRows; /** * @hidden * @private */ private gridHeaders; /** * @hidden * @private */ private gridInitialWidth; /** * @hidden * @private */ isComplete: boolean; /** * @hidden * @private */ private gridSize; private parentCell; private parentCellIndex; tempWidth: number; private childheight; /** * The event raised on `starting cell drawing`. * @event * @private */ beginCellDraw: Function; /** * The event raised on `ending cell drawing`. * @event * @private */ endCellDraw: Function; /** * The event raised on `begin cell lay outing`. * @event * @private */ beginPageLayout: Function; /** * The event raised on `end cell lay outing`. * @event * @private */ endPageLayout: Function; /** * @hidden * @private */ /** * @hidden * @private */ private gridLocation; /** * @hidden * @private */ private gridStyle; /** * @hidden * @private */ private pageWidth; /** * Check weather it is `child grid or not`. * @private */ private isChildGrid; /** * @hidden * @private */ rowLayoutBoundsWidth: number; /** * @hidden * @private */ hasRowSpanSpan: boolean; /** * @hidden * @private */ isRearranged: boolean; /** * @hidden * @private */ private bRepeatHeader; /** * @hidden * @private */ private pageBounds; /** * @hidden * @private */ private currentPage; /** * @hidden * @private */ private currentPageBounds; /** * @hidden * @private */ private currentBounds; /** * @hidden * @private */ private listOfNavigatePages; /** * @hidden * @private */ private startLocation; /** * @hidden * @private */ private hType; /** * @hidden * @private */ private flag; /** * @hidden * @private */ private columnRanges; /** * @hidden * @private */ private cellStartIndex; /** * @hidden * @private */ private cellEndIndex; /** * @hidden * @private */ private currentRowIndex; /** * @hidden * @private */ static repeatRowIndex: number; /** * @hidden * @private */ private isChanged; /** * @hidden * @private */ private currentLocation; /** * @hidden * @private */ private breakRow; /** * @hidden * @private */ private rowBreakPageHeightCellIndex; private slr; private remainderText; private isPaginate; /** * Initialize a new instance for `PdfGrid` class. * @private */ constructor(baseFormat: PdfGrid); readonly Grid: PdfGrid; /** * `Bounds` of the text. * @private */ private rectangle; /** * Pdf page `height`. * @private */ private gridHeight; /** * Specifies if [`isTabReplaced`]. * @private */ private isTabReplaced; /** * `currentGraphics` of the text. * @private */ private currentGraphics; /** * Count of tab `occurance`. * @private */ private tabOccuranceCount; /** * Checks whether the x co-ordinate is need to set as client size or not. * @hidden * @private */ private isOverloadWithPosition; /** * Stores client size of the page if the layout method invoked with `PointF` overload. * @hidden * @private */ private clientSize; private gridLayoutFormat; private isHeader; /** * Initializes a new instance of the `StringLayouter` class. * @private */ /** * `Layouts` the text. * @private */ /** * `Layouts` the specified graphics. * @private */ /** * `Layouts` the specified graphics. * @private */ /** * Gets the `format`. * @private */ private getFormat; /** * `Layouts` the element. * @private */ protected layoutInternal(param: PdfLayoutParams): PdfLayoutResult; /** * `Determines the column draw ranges`. * @private */ private determineColumnDrawRanges; /** * `Layouts the on page`. * @private */ private layoutOnPage; private checkIsFisished; /** * Gets the `next page`. * @private */ getNextPageformat(format: PdfLayoutFormat): PdfPage; private CheckIfDefaultFormat; /** * `Raises BeforeCellDraw event`. * @private */ private RaiseBeforeCellDraw; /** * `Raises AfterCellDraw event`. * @private */ private raiseAfterCellDraw; private reArrangePages; /** * Gets the `layout result`. * @private */ private getLayoutResult; /** * `Recalculate row height` for the split cell to be drawn. * @private */ ReCalculateHeight(row: PdfGridRow, height: number): number; /** * `Raises BeforePageLayout event`. * @private */ private raiseBeforePageLayout; /** * `Raises PageLayout event` if needed. * @private */ private raisePageLayouted; private drawRow; private isFitToCell; /** * `Draws row` * @private */ private drawRowWithBreak; } /** * `Initializes` internal data. * @private */ export declare class PdfGridLayoutResult extends PdfLayoutResult { /** * Constructor * @private */ constructor(page: PdfPage, bounds: RectangleF); } /** * `PdfGridLayoutFormat` class represents a flexible grid that consists of columns and rows. */ export declare class PdfGridLayoutFormat extends PdfLayoutFormat { /** * Initializes a new instance of the `PdfGridLayoutFormat` class. * @private */ constructor(); /** * Initializes a new instance of the `PdfGridLayoutFormat` class. * @private */ constructor(baseFormat: PdfLayoutFormat); } export declare abstract class GridCellEventArgs { /** * @hidden * @private */ private gridRowIndex; /** * @hidden * @private */ private gridCellIndex; /** * @hidden * @private */ private internalValue; /** * @hidden * @private */ private gridBounds; /** * @hidden * @private */ private pdfGraphics; /** * Gets the value of current `row index`. * @private */ readonly rowIndex: number; /** * Gets the value of current `cell index`. * @private */ readonly cellIndex: number; /** * Gets the actual `value` of current cell. * @private */ readonly value: string; /** * Gets the `bounds` of current cell. * @private */ readonly bounds: RectangleF; /** * Gets the instance of `current graphics`. * @private */ readonly graphics: PdfGraphics; /** * Initialize a new instance for `GridCellEventArgs` class. * @private */ constructor(graphics: PdfGraphics, rowIndex: number, cellIndex: number, bounds: RectangleF, value: string); } export declare class PdfGridBeginCellDrawEventArgs extends GridCellEventArgs { /** * @hidden * @private */ private bSkip; /** * @hidden * @private */ private cellStyle; /** * Gets or sets a value indicating whether the value of this cell should be `skipped`. * @private */ skip: boolean; /** * Gets or sets a `style` value of the cell. * @private */ style: PdfGridCellStyle; /** * Initializes a new instance of the `StartCellLayoutEventArgs` class. * @private */ constructor(graphics: PdfGraphics, rowIndex: number, cellIndex: number, bounds: RectangleF, value: string, style: PdfGridCellStyle); } export declare class PdfGridEndCellDrawEventArgs extends GridCellEventArgs { /** * @hidden * @private */ private cellStyle; /** * Get the `PdfGridCellStyle`. * @private */ readonly style: PdfGridCellStyle; /** * Initializes a new instance of the `PdfGridEndCellLayoutEventArgs` class. * @private */ constructor(graphics: PdfGraphics, rowIndex: number, cellIndex: number, bounds: RectangleF, value: string, style: PdfGridCellStyle); } export declare class PdfCancelEventArgs { /** * @hidden * @private */ private isCancel; /** * Gets and Sets the value of `cancel`. * @private */ cancel: boolean; } export declare class BeginPageLayoutEventArgs extends PdfCancelEventArgs { /** * The `bounds` of the lay outing on the page. * @private */ private cellBounds; /** * `Page` where the lay outing should start. * @private */ private pdfPage; /** * Gets or sets value that indicates the lay outing `bounds` on the page. * @private */ bounds: RectangleF; /** * Gets the `page` where the lay outing should start. * @private */ readonly page: PdfPage; /** * Initializes a new instance of the `BeginPageLayoutEventArgs` class with the specified rectangle and page. * @private */ constructor(bounds: RectangleF, page: PdfPage); } /** * `EndPageLayoutEventArgs` class is alternate for end page layout events. */ export declare class EndPageLayoutEventArgs extends PdfCancelEventArgs { /** * `Layout result`. * @private */ private layoutResult; /** * The `next page` for lay outing. * @private */ private nextPdfPage; /** * Gets the lay outing `result` of the page. * @private */ readonly result: PdfLayoutResult; /** * Gets or sets a value indicating the `next page` where the element should be layout. * @private */ nextPage: PdfPage; /** * Initializes a new instance of the `EndPageLayoutEventArgs` class. with the specified 'PdfLayoutResult'. * @private */ constructor(result: PdfLayoutResult); } /** * `PdfGridBeginPageLayoutEventArgs` class is alternate for begin page layout events. */ export declare class PdfGridBeginPageLayoutEventArgs extends BeginPageLayoutEventArgs { /** * @hidden * @private */ private startRow; /** * Gets the `start row index`. * @private */ readonly startRowIndex: number; /** * Initialize a new instance of `PdfGridBeginPageLayoutEventArgs` class. * @private */ constructor(bounds: RectangleF, page: PdfPage, startRow: number); } /** * `PdfGridEndPageLayoutEventArgs` class is alternate for begin page layout events. */ export declare class PdfGridEndPageLayoutEventArgs extends EndPageLayoutEventArgs { /** * Initialize a new instance of `PdfGridEndPageLayoutEventArgs` class. * @private */ constructor(result: PdfLayoutResult); } export declare class RowLayoutResult { /** * @hidden * @private */ private bIsFinished; /** * @hidden * @private */ private layoutedBounds; /** * Gets or sets a value indicating whether this instance `is finish`. * @private */ isFinish: boolean; /** * Gets or sets the `bounds`. * @private */ bounds: RectangleF; /** * Initializes a new instance of the `RowLayoutResult` class. * @private */ constructor(); }