DrawTextFlowColumns
Text, Layout
Beschreibung
Leitet den verbleibenden Text von links nach rechts durch gleich breite Spalten in einem Seitenbereich
Syntax
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);Parameter
| FlowID | Von NewTextFlow zurückgegebenes Handle |
|---|---|
| Left, Top | Obere linke Position des vollständigen Spaltenbereichs |
| Width, Height | Verfügbare Größe für den vollständigen Spaltenbereich |
| Columns | Anzahl gleich breiter Spalten von 1 bis 64 |
| Gutter | Nicht negativer Abstand zwischen benachbarten Spalten |
| Balance | 0 füllt jede Spalte bis zur vollen Höhe, während 1 einen abgeschlossenen Bereich ausgleicht |
Rückgabewerte
Gibt die Gesamtzahl der gezeichneten Zeilen zurück oder 0, wenn nichts passt, das Handle ungültig oder die Geometrie ungültig ist
Anmerkungen
Wenn Balance 1 ist und der gesamte verbleibende Text in den vollständigen Bereich passt, verteilt die Funktion die genaue Anzahl der verbleibenden Zeilen auf die angeforderten Spalten
Wenn mehr Text verbleibt, als der Bereich aufnehmen kann, behält jede Spalte die vollständige angeforderte Höhe, sodass die Kapazität auf Zwischenseiten nicht reduziert wird
Beim Ausgleichen wird nur bis zu einer Zeile über die Bereichskapazität hinaus gemessen, wodurch ein vollständiges Durchsuchen eines langen, auf einer anderen Seite fortzusetzenden Abschnitts vermieden wird
Ungültige Geometrie und ein für eine Zeile zu kurzer Bereich lassen den Ablaufcursor unverändert
Beispiel
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;