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 LongDLL
int DLDrawTextFlowColumns(int InstanceID, int FlowID, double Left, double Top, double Width, double Height, int Columns, double Gutter, int Balance);Parâmetros
| FlowID | Identificador devolvido por NewTextFlow |
|---|---|
| Left, Top | Posição superior esquerda da região completa das colunas |
| Width, Height | Tamanho disponível para a região completa das colunas |
| Columns | Número de colunas de largura igual, de 1 a 64 |
| Gutter | Espaço não negativo entre colunas adjacentes |
| Balance | 0 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;