DrawTextFlowColumns

Tekst, opmaak

Beschrijving

Laat de resterende tekst in één paginagebied van links naar rechts door kolommen met gelijke breedte lopen

Syntaxis

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 Long

DLL

int DLDrawTextFlowColumns(int InstanceID, int FlowID, double Left, double Top, double Width, double Height, int Columns, double Gutter, int Balance);

Parameters

FlowIDHandle geretourneerd door NewTextFlow
Left, TopDe positie linksboven van de complete kolomregio
Width, HeightBeschikbare grootte voor de complete kolomregio
ColumnsAantal kolommen van gelijke breedte, van 1 tot en met 64
GutterNiet-negatieve afstand tussen aangrenzende kolommen
Balance0 vult elke kolom tot de volledige hoogte, 1 balanceert een voltooide regio

Retourwaarden

Geeft het totale aantal getekende regels terug, of 0 wanneer niets past, de handle ongeldig is of de geometrie ongeldig is

Opmerkingen

Wanneer Balance 1 is en alle resterende tekst in de volledige regio past, verdeelt de functie het exacte aantal resterende regels over de aangevraagde kolommen

Wanneer er meer tekst overblijft dan de regio kan bevatten, houdt elke kolom de volledige aangevraagde hoogte aan zodat de capaciteit op tussenliggende pagina's niet afneemt

Balanceren meet slechts tot één regel voorbij de regiocapaciteit, zodat een lange passage die naar een andere pagina moet doorlopen niet volledig hoeft te worden gescand

Ongeldige geometrie en een regio die te kort is voor één regel laten de flowcursor ongewijzigd

Voorbeeld

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;

Zie ook

DrawTextFlow, MeasureTextFlow, SetTextFlowMinLines