DrawTextFlowColumns
Tekst, layout
Beskrivelse
Flyder den resterende tekst fra venstre mod højre gennem kolonner med ens bredde i ét sideområde
Syntaks
Delphi
Function TPDFlib.DrawTextFlowColumns(FlowID: Integer; Left, Top, Width, Height: Double; Columns: Integer; Gutter: Double; Balance: Integer): Integer;ActiveX
Function PDFlib::DrawTextFlowColumns(FlowID As Long, Left As Double, Top As Double, Width As Double, Height As Double, Columns As Long, Gutter As Double, Balance As Long) As LongDLL
int DLDrawTextFlowColumns(int InstanceID, int FlowID, double Left, double Top, double Width, double Height, int Columns, double Gutter, int Balance);Parametre
| FlowID | Håndtag returneret af NewTextFlow |
|---|---|
| Left, Top | Øverste venstre placering for hele kolonneområdet |
| Width, Height | Tilgængelig størrelse for hele kolonneområdet |
| Columns | Antal kolonner med samme bredde fra 1 til 64 |
| Gutter | Ikke-negativ afstand mellem tilstødende kolonner |
| Balance | 0 fylder hver kolonne til fuld højde, mens 1 balancerer et fuldført område |
Returværdier
Returnerer det samlede antal tegnede linjer eller 0, når intet passer, håndtaget er ugyldigt, eller geometrien er ugyldig
Bemærkninger
Når Balance er 1, og al resterende tekst kan være i hele området, fordeler funktionen det nøjagtige antal resterende linjer på de ønskede kolonner
Når der er mere tekst tilbage, end området kan rumme, beholder hver kolonne hele den ønskede højde, så kapaciteten ikke reduceres på mellemliggende sider
Balancering måler kun op til én linje ud over områdets kapacitet, hvilket undgår en fuld scanning af en lang passage, der skal fortsætte på en anden side
Ugyldig geometri og et område, der er for kort til én linje, efterlader flowcursoren uændret
Eksempel
while PDF.TextFlowFinished(Flow)= 0 do
begin
PDF.DrawTextFlowColumns(Flow, 50, 60, 495, 720, 3, 18, 1);
if PDF.TextFlowFinished(Flow)= 0 then PDF.NewPage;
end;