Obter coordenadas num documento 4D Write Pro

Tradução automática de Deepl

A esta altura, já deve estar familiarizado com a WP Get position comando. No mínimo, já leu sobre isso neste post do blogue. Introduzido com o v17, ajuda-o a obter informações sobre a localização dos elementos nos seus documentos.

4D v17 R4 apimenta as coisas … agora, também devolve coordenadas!

novos atributos

O WP Get position devolve dois novos atributos: bounds e rangeHeight.

O atributo bounds é um objecto que descreve o rectângulo que rodeia um intervalo, de acordo com o seu tipo. O tipo do intervalo passado pode ser “tipo por defeito” (caracteres), “tipo de parágrafo”, “tipo de tabela”, ou “tipo de imagem”, como se mostra abaixo:

O atributo bounds tem atributos próprios: esquerda, superior, direita e inferior . São numéricos e expressos na unidade de disposição actual (mm, cm, in, pt, ou px).

Exemplo

Esta característica permite-lhe configurar facilmente desenhos de páginas complexas. Por exemplo, ao utilizar modelos, pode ser necessário comparar o tamanho de um bloco a inserir de acordo com o espaço disponível no fim da página actual. Se o espaço não for suficientemente grande(ou seja, “5cm”), poderá decidir inserir primeiro uma quebra de página. Simples e fácil. Aqui está como proceder:

$range:=WP Get selection(WParea)
WP SET ATTRIBUTES (WParea;wk layout unit;wk unit cm) // change the unit to "cm"
$position :=WP Get position($range ;wk 4D Write Pro layout) // call the WP Get position function
$heightInCm:=$position.rangeHeight // read the height in "cm"
If ($heightInCm<5)
// insert a break…
End if

aqui está o conteúdo detalhado do objecto devolvido

{
"section": 1,
"page": 1,
"column": 1,
"line": 11,
"position": 49,
"bounds":    // New!
 {
  "left": 1.52,
  "top": 10.65,
  "right": 18.66,
  "bottom": 12.56,
 }
  rangeHeight: 1.9  // New!
}

Veja a característica em acção com esta base de dados de demonstração.

4D Write Pro: Obter coordenadas de um elemento

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.