À présent, vous devriez être familiarisé avec la commande WP Get position vous est maintenant familière. Vous l’avez au moins lu dans cet article de blog. Introduite avec la v17, elle vous aide à obtenir des informations sur l’emplacement des éléments dans vos documents.
4D v17 R4 met du piquant … maintenant, il renvoie aussi des coordonnées!
nouveaux attributs
La commande WP Get position renvoie deux nouveaux attributs : bounds et rangeHeight.
L’attribut bounds est un objet qui décrit le rectangle entourant une plage, en fonction de son type. Le type de la plage transmise peut être « type par défaut » (caractères), « type paragraphe », « type tableau » ou « type image », comme indiqué ci-dessous :
L’attribut bounds possède ses propres attributs : gauche, haut, droite et bas. Ils sont numériques et exprimés dans l’unité de mise en page actuelle (mm, cm, in, pt ou px).
Exemple
Cette fonctionnalité vous permet de configurer facilement des conceptions de page complexes. Par exemple, lorsque vous utilisez des modèles, vous pouvez avoir besoin de comparer la taille d’un bloc à insérer en fonction de l’espace disponible à la fin de la page actuelle. Si l’espace n’est pas assez grand( par exemple « 5 cm »), vous pouvez décider d’insérer d’abord un saut de page. C’est simple et facile. Voici comment procéder :
$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
voici le contenu détaillé de l’objet retourné
{ "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! }
Voyez la fonctionnalité en action avec cette base de données de démonstration.