DrawTextFlowColumns
Text, rozvržení
Popis
Zbývající text proudí zleva doprava do sloupců stejné šířky v jedné oblasti stránky
Syntaxe
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);Parametry
| FlowID | Popisovač vrácený funkcí NewTextFlow |
|---|---|
| Left, Top | Pozice kompletní sloupcové oblasti vlevo nahoře |
| Width, Height | Dostupná velikost pro celou sloupcovou oblast |
| Columns | Počet sloupců stejné šířky od 1 do 64 |
| Gutter | Nezáporná mezera mezi sousedními sloupci |
| Balance | 0 vyplní každý sloupec do plné výšky, 1 vyrovná dokončenou oblast |
Návratové hodnoty
Vrací celkový počet nakreslených řádků, nebo 0, když se nic nevejde, je handle neplatné, nebo je geometrie neplatná
Poznámky
Když je Balance 1 a všechen zbývající text se vejde do kompletní oblasti, funkce rozdělí přesný zbývající počet řádek napříč požadovanými sloupci
Když zbývá více textu, než může oblast pojmout, každý sloupec drží plnou požadovanou výšku, takže kapacita se nesnižuje na mezistránkách
Vyvažování měří jen do jedné řádky nad kapacitou oblasti, čímž se vyhne úplnému skenu dlouhého úseku, který musí pokračovat na další stránku
Neplatná geometrie a oblast příliš krátká pro jednu řádku ponechají kurzor toku beze změny
Příklad
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;