Obtener coordenadas en un documento de 4D Write Pro

Traducido automáticamente de Deepl

A estas alturas, deberías estar familiarizado con el comando WP Get position comando. Al menos has leído sobre él en esta entrada del blog. Introducido con la v17, te ayuda a obtener información sobre la ubicación de los elementos dentro de tus documentos.

4D v17 R4 le da sabor a las cosas… ¡ahora también devuelve coordenadas!

nuevos atributos

El comando WP Get position devuelve dos nuevos atributos: bounds y rangeHeight.

El atributo bounds es un objeto que describe el rectángulo que rodea un rango, según su tipo. El tipo del rango pasado puede ser «tipo por defecto» (caracteres), «tipo párrafo», «tipo tabla», o «tipo imagen», como se muestra a continuación:

El atributo bounds tiene atributos propios: left, top, right y bottom. Son numéricos y se expresan en la unidad de diseño actual (mm, cm, in, pt o px).

Ejemplo

Esta función le permite configurar fácilmente diseños de página complejos. Por ejemplo, cuando se utilizan plantillas puede ser necesario comparar el tamaño de un bloque a insertar en función del espacio disponible al final de la página actual. Si el espacio no es lo suficientemente grande( por ejemplo, «5 cm»), puede decidir insertar primero un salto de página. Es sencillo y fácil. Así es como se procede:

$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

aquí está el contenido detallado del objeto devuelto

{
"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!
}

Vea la función en acción con esta base de datos de demostración.

4D Write Pro: Obtener las coordenadas de un elemento

Roland Lannuzel
- Propietario de Producto y Experto en 4D - Después de estudiar electrónica, Roland se dedicó a la informática industrial como desarrollador y consultor, construyendo soluciones para clientes con una variedad de bases de datos y tecnologías. A finales de los años 80 se enamoró de 4D y lo ha utilizado para escribir aplicaciones de negocio que incluyen sistemas de contabilidad, facturación y correo electrónico.Eventualmente se unió a la compañía en 1997, las valiosas contribuciones de Roland incluyen el diseño de especificaciones, herramientas de prueba, demos, así como la formación y hablar con la comunidad 4D en muchas conferencias. Continúa dando forma activamente al futuro de 4D definiendo nuevas características y herramientas de desarrollo de bases de datos.