DrawTextFlowColumns

Texto, esquema

Descrição

Distribui o texto restante da esquerda para a direita por colunas de igual largura numa região da página

Sintaxe

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);

Parâmetros

FlowIDIdentificador devolvido por NewTextFlow
Left, TopPosição superior esquerda da região completa das colunas
Width, HeightTamanho disponível para a região completa das colunas
ColumnsNúmero de colunas de largura igual, de 1 a 64
GutterEspaço não negativo entre colunas adjacentes
Balance0 preenche cada coluna até à altura total, enquanto 1 equilibra uma região concluída

Valores devolvidos

Devolve o número total de linhas desenhadas, ou 0 quando nada cabe, o identificador é inválido ou a geometria é inválida

Observações

Quando Balance é 1 e todo o texto restante cabe na região completa, a função divide o número exato de linhas restantes pelas colunas solicitadas

Quando resta mais texto do que a região pode conter, todas as colunas mantêm a altura total solicitada para que a capacidade não seja reduzida nas páginas intermédias

O equilíbrio mede apenas até uma linha além da capacidade da região, evitando analisar na totalidade uma passagem longa que tem de continuar noutra página

Uma geometria inválida e uma região demasiado curta para uma linha deixam o cursor do fluxo inalterado

Exemplo

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;

Consulte também

DrawTextFlow, MeasureTextFlow, SetTextFlowMinLines