4D Write Pro – Mais controlo na disposição da página

Tradução automática de Deepl

4D Write Pro facilita a criação de documentos complexos. Os atributos de apresentação e layout podem ser aplicados a diferentes partes dos documentos, quer sejam textos, imagens, ou tabelas. Por falar em tabelas, elas beneficiam de uma nova propriedade para melhor definir o layout! Vamos ver o que 4D v19 R4 tem reservado para si.

HDI Quebra dentro das filas da mesa

Mesas pequenas e grandes

As tabelas podem conter muitas filas, e o espaço que ocupam num documento pode ser significativo.
Quando não há espaço suficiente numa página, já existe um atributo que define se uma tabela pode ser automaticamente dividida em duas partes ou precedida por uma quebra de página para caber na página seguinte.

Até 4D V19R4, quando as tabelas são divididas em duas partes, a separação é sempre feita entre duas filas. Isto é normalmente suficiente porque as filas de uma tabela contêm apenas números ou etiquetas a maior parte do tempo. Por outro lado, quando as células têm texto mais longo (ou mesmo vários parágrafos), pode ser interessante permitir dividi-las em duas (e portanto também dividir as linhas da tabela) para preencher o espaço disponível.

Novos atributos

Aquebra de página wk dentro da mesa permite que uma mesa seja dividida em duas (ou mais) partes, a separação é feita entre duas linhas da mesa.

Aquebra de página wk dentro da fila também permite dividir uma mesa, mas desta vez dentro das filas. Note-se que esta opção depende da anterior. Se uma mesa não pode ser dividida, as suas filas também não.

Este atributo pode ser aplicado a um intervalo de linhas, a um elemento de linha, ou a qualquer alvo. Neste último caso, basta lembrar que, no final, são os atributos das linhas que são realmente afectados de forma transparente.

Aquebra de página wk dentro do parágrafo pode ser aplicada a parágrafos, mas também a qualquer alvo, como o próprio documento, uma secção específica, um intervalo de texto, etc. Em todos os casos, o atributo será de facto atribuído aos parágrafos dentro do alvo. Isto é simplesmente uma característica de “qualidade de vida”.

Nota: A quebra de página de atributo existente no interior que se aplicava tanto a parágrafos como a tabelas é agora obsoleta (mas continuará a funcionar por compatibilidade). É vantajosamente substituído pelos novos atributos mais explícitos acima descritos.

O que irá esta alteração?

Para novos documentos, esta nova opção é activada por defeito. De facto, não irá alterar nada se as linhas da tabela tiverem apenas uma linha de texto. Por outro lado, se as células contiverem um ou mais parágrafos, estas linhas serão divididas automaticamente.

Para documentos criados com uma versão anterior, para garantir a sua disposição idêntica, esta opção será desactivada em todas as filas de todas as tabelas quando os documentos forem abertos.

Exemplos de códigos

Amostra 1: Permitir quebras de página dentro de qualquer fila de uma tabela

WP SET ATTRIBUTES($table; wk page break inside row; wk auto)

Amostra2: Permitir quebras de página dentro de qualquer fila de uma tabela, excepto a primeira e última filas

Tem duas maneiras de programar isto de acordo com o seu gosto!

#1 Utilizar intervalos de fila

// all rows can be split
WP SET ATTRIBUTES($table; wk page break inside row; wk auto)
// except first
WP SET ATTRIBUTES (WP Table get rows($table; 1; 1); wk page break inside row; wk avoid)
// and last
WP SET ATTRIBUTES (WP Table get rows ($table; $table.rowCount; 1); wk page break inside row; wk avoid)

#2 Usar elementos de linha

// all rows can be split
WP SET ATTRIBUTES($table; wk page break inside row; wk auto)
// get row elements
$colRows:=WP Get elements($table; wk type table row)
// except first
WP SET ATTRIBUTES ($colRows[0]; wk page break inside row; wk avoid)
//
and last
WP SET ATTRIBUTES ($colRows[$colRows.length-1]; wk page break inside row; wk avoid)

Interface

A interface fornecida foi, evidentemente, modificada para ter em conta estes novos atributos no menu de tabelas e linhas.

blank

blank

Conclusão

Novos atributos foram criados para maior clareza, e um foi acrescentado para maior flexibilidade na apresentação. É a sua vez de criar u belos layouts e documentos!

A lista de todos os atributos e constantes pode ser encontrada na documentação.

Roland Lannuzel
- Proprietário do produto & Especialista 4D - Depois de estudar electrónica, a Roland entrou nas TI industriais como desenvolvedor e consultor, construindo soluções para clientes com uma variedade de bases de dados e tecnologias. No final dos anos 80, apaixonou-se pela 4D e utilizou-a para escrever aplicações comerciais que incluem sistemas de contabilidade, facturação e correio electrónico. Juntando-se à empresa em 1997, as valiosas contribuições de Roland incluem a concepção de especificações, ferramentas de teste, demonstrações, bem como formação e palestras para a comunidade 4D em muitas conferências. Ele continua a moldar activamente o futuro da 4D, definindo novas características e ferramentas de desenvolvimento de bases de dados.