Compose
Układ strony, paginacja, Form XObjects
Opis
Metoda abstrakcyjna klasy TPDFlibDynamicComponent, rysująca jeden fragment komponentu we współrzędnych lokalnych i raportująca jego użyte granice oraz stan kontynuacji
Składnia
Function TPDFlibDynamicComponent.Compose(
Const Context: TPDFlibDynamicPageContext;
Out ComposeResult: TPDFlibDynamicPageResult): Integer;
Virtual; Abstract;
Parametry
Context.LibraryInstance | Dołączona instancja TPDFlib, przez którą fragment ma rysować |
|---|---|
Context.PageNumber | Numer strony docelowej, mimo że biblioteka wybiera odizolowaną stronę tymczasową na czas działania funkcji zwrotnej |
Context.CompositionIndex | Numer liczony od 1, który fragment otrzymuje przy zatwierdzeniu |
Context.DestinationLeft, Context.DestinationTop | Pozycja gniazda docelowego przekazana dalej z wywołania kompozycji |
Context.AvailableWidth, Context.AvailableHeight | Naturalny rozmiar obszaru roboczego otaczającego Form XObject |
Rekord wyniku
HasContent | True, gdy fragment narysował widoczną zawartość |
|---|---|
HasMoreContent | True, gdy komponent potrafi wyprodukować kolejny fragment |
UsedWidth, UsedHeight | Użyty prostokąt zaczynający się w lokalnym punkcie zerowym, który ma ograniczać całą widoczną zawartość komponentu |
Uwagi
Wyniki z treścią wymagają skończonych dodatnich wartości UsedWidth i UsedHeight w granicach AvailableWidth i AvailableHeight
Wynik bez treści jest ważny tylko, gdy HasMoreContent ma wartość False, a obie wykorzystane wymiary są zerowe
Wywołanie zwrotne może używać API rysowania i treści, ale nie zmienia dokumentów, stron ani zagnieżdżonych kontenerów rysowania
Sesja waliduje ComposeResult przez ValidComposeResult, zanim zapadnie jakakolwiek decyzja o umieszczeniu
Zwrócenie zera odrzuca próbę bez zatwierdzania stanu komponentu albo celu; podniesione wyjątki są propagowane po posprzątaniu stanu tymczasowego przez sesję
Wartości zwracane
1 | Wynik fragmentu jest przedkładany do walidacji i rozmieszczenia |
|---|---|
0 | Próba jest odrzucana i nie zmienia się stan komponentu ani celu |
Zobacz również
TPDFlibDynamicComponent, TPDFlibDynamicPageContext, TPDFlibDynamicPageResult, ValidComposeResult, ComposeNextLayout, CloneComponent