ComposeNextLayout
Postavitev strani, paginacija, Form XObjects
Opis
Sestavi enega stanjskega dinamičnega delčka na platnu naravne velikosti, uporabi pravila prekoračitve, poravnave, paginacije in prostora pretoka ter poroča dokončno transformacijo umestitve
Sintaksa
Function TPDFlibDynamicComponentSession.ComposeNextLayout(
Page: Integer; SlotLeft, SlotTop, SlotWidth, SlotHeight: Double;
Const Options: TPDFlibDynamicLayoutOptions;
Out Placement: TPDFlibDynamicPagePlacement): Integer;
Parametri
Page | Obstoječa ciljna številka strani, šteto od 1 |
|---|---|
SlotLeft, SlotTop | Zgornji levi položaj ciljnega mesta v trenutnih enotah dokumenta |
SlotWidth, SlotHeight | Končna pozitivna velikost ciljnega mesta |
Options.ContentWidth, Options.ContentHeight | Končno pozitivno naravno platno, podano komponenti prek AvailableWidth in AvailableHeight |
Options.OverflowPolicy | dopReject, dopClip ali dopScaleDown |
Options.HorizontalAlignment | dhaLeft, dhaCenter ali dhaRight |
Options.VerticalAlignment | dvaTop, dvaCenter ali dvaBottom |
Options.PaginationPolicy | Običajno razdeljevanje, enkratni povratni poskus ohranjanja skupaj ali strogo popolna umestitev |
Options.MinimumSlotHeight | Nenegativna višina mesta, zahtevana, preden se začne kloniranje in sestavljanje komponente |
Options.MinimumFollowingHeight | Nenegativna višina, rezervirana po končnem razrešenem delčku za naslednjo komponento |
Rezultat umestitve
PageNumber, CompositionIndex | Potrjena stran in uspešna številka sestavljanja, šteto od 1 |
|---|---|
SourceWidth, SourceHeight | Naravni uporabljen pravokotnik, ki ga je komponenta vrnila pred umestitvijo |
Left, Top, Width, Height | Dokončno preoblikovani uporabljen pravokotnik pred ciljnim izrezom |
SlotLeft, SlotTop, SlotWidth, SlotHeight | Izvirno ciljno območje |
Transform | Logična afina matrika iz komponentno-lokalnih koordinat v dokončne koordinate dokumenta od zgoraj navzdol |
WasClipped | True, kadar izrez skrije del preoblikovanega uporabljenega pravokotnika |
WasScaled | True, kadar je sorazmerna povečava manjša od 1 |
Opombe
dopReject ohrani ciljno stran in potrjeno stanje komponente, kadar naravni uporabljen pravokotnik presega katero koli mero mesta
dopClip
dopScaleDown ohrani naravno povečavo in uporabi uravnotežen izrezni obseg stanja grafike okoli klica Form XObjecta
Min(1, SlotWidth / SourceWidth, SlotHeight / SourceHeight) izbere
ContentWidth in ohrani razmerje stranic komponente
Povečevanje nikoli ne razširi vsebine, ki se že prilega
Platno Form XObjecta sledi ContentHeight in
MinimumSlotHeight
MinimumFollowingHeight, poravnava pa uporabi komponento-poročani uporabljen pravokotnik, zasidran pri lokalni koordinati nič
Tok vsebine strani prevzame sklic na umščenega Form XObjecta, preden se sprosti začasni ročaj zajema
Mesto, krajše od HasMoreContent, vrne ponovni poskus brez kloniranja komponente, klica njenega povratnega klica ali ustvarjanja začasne strani
LastRetryReason ne omejuje vmesnih delčkov in se preveri samo, kadar je LastRequiredSlotHeight false
Ponovni poskus v prostoru toka vrne prazno postavitev, ohrani vse prej potrjene fragmente in svoj razlog ter zahtevano višino izpostavi prek
Primer
Options := TPDFlibDynamicComponentSession.CreateLayoutOptions(
640, 360, dopScaleDown, dhaLeft, dvaTop, dppAllowSplit, 72, 24);
Status := Session.ComposeNextLayout(
PageNumber, 36, 72, 540, 240, Options, Placement);
if Status <> PDF_DYNAMIC_COMPONENT_ERROR then
begin
FinalScale := Placement.Transform.M11;
FinalLeft := Placement.Left;
FinalTop := Placement.Top;
end;
Vrnjene vrednosti
PDF_DYNAMIC_COMPONENT_ERROR | Validacija vnosa, povratnega klica, geometrije, prelivanja ali postavitve ni uspela, stanje pa ni bilo potrjeno |
|---|---|
PDF_DYNAMIC_COMPONENT_MORE | Fragment je bil potrjen in ostaja še dodatna vsebina |
PDF_DYNAMIC_COMPONENT_COMPLETE | Fragment je dokončal sejo, oziroma je bila seja že prej dokončana |
PDF_DYNAMIC_COMPONENT_RETRY | Pravilo paginacije ali prostora toka je nepotrjen poskus preložilo na drugo režo |
Glejte tudi
TPDFlibDynamicComponentSession, BeginFormXObject, ReleaseCapturedPage, DrawCapturedPage