Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com

Accueil

 
4D v20 R7
WP Lire elements

WP Lire elements 


 

WP Lire elements ( objCible {; typeElement} ) -> Résultat 
Paramètre Type   Description
objCible  Objet in Plage ou élément ou document 4D Write Pro
typeElement  Entier long in Choix du type d'éléments à retrouver
Résultat  Collection in Collection contenant des références d'éléments

La commande WP Lire elements retourne une collection d'objets contenant des paragraphes, images, tableaux et/ou lignes de tableaux.

Dans le paramètre objCible, vous pouvez passer :

  • une plage, ou
  • un élément (tableau / ligne / paragraphe / corps / en-tête / pied / section / sous-section / zone de texte), ou
  • un document 4D Write Pro

Note : Si vous passez une sous-section dans objCible, la commande retourne les éléments de la section parente.

Si une plage ou un élément typé(e) est passé(e), la commande renverra une collection contenant uniquement les éléments du type correspondant (sauf si vous spécifiez un type grâce au paramètre typeElement, voir ci-dessous). Sinon, la commande retourne une collection contenant tous les éléments disponibles dans objCible.

Vous pouvez passer le paramètre optionnel typeElement pour spécifier les types d'éléments à renvoyer dans la collection. Les types suivants sont disponibles :

Constante Valeur Comment
wk type default 0 Type de plage par défaut
wk type image 2 Images ancrées et/ou en ligne
wk type image anchored 200 Référence d'image ancrée pour objets documents
wk type image inline 100 Référence d'image en ligne pour objets documents
wk type paragraph 1 Plage de type paragraphe
wk type table 4 Référence de tableau
wk type table row 5 Référence de ligne de tableau
wk type text box 300
 

Note :

  • Si vous passez le sélecteur wk type default, la commande renvoie une collection non filtrée.
  • Si vous passez le sélecteur wk type paragraph, wk type image ou wk type table, la collection retournée contiendra uniquement les éléments du type indiqué, même s'ils diffèrent du type spécifié dans le paramètre typeElement.
  • Si une plage indiquée dans objCible contient un élément qui n'est pas entièrement contenu dans la plage, l'élément entier sera inclus dans les résultats. Par exemple, si la plage inclut une partie d'un tableau (mais pas tout le tableau), la référence de l'élément tableau entier est renvoyée, en revanche seules les références de cellules (paragraphes) comprises dans la plage sont incluses.
  • Si vous passez wk type text box dans le paramètre typeElementobjCible ne pourra contenir qu'un document 4D Write Pro. Une erreur sera renvoyée si vous passez autre chose qu'un document objet dans objCible dans ce cas.
 
 

Les éléments contenus dans la collection retournée sont classés différemment selon le contenu d'objCible :

  • Si vous avez passé une plage ou un élément dans objCible (paragraphe, tableau, corps, en-tête, pied, etc.), les éléments de la collection sont triés par ordre d'apparition dans le document.
  • Si vous avez passé un document 4D Write Pro dans objCible, toutes les zones du document étant retournées, les éléments de la collection sont triés en fonction de leur ID (à l'exception des images ancrées lorsque le paramètre wk type image anchored est utilisé; dans ce cas, ils sont triés par ordre Z). Les éléments en ligne de type typeElement présents dans les zones de texte (le cas échéant) sont renvoyés à la fin de la collection.

Si vous souhaitez par exemple alterner la couleur de fond des paragraphes présents dans le corps d'un document, passez l'élément "body" (et non le document) dans l'objCible, afin de vous assurer que l'ordre des éléments de la collection corresponde à celui des paragraphes du document.

Vous voulez récupérer une collection de tous les paragraphes dans un document :

 C_COLLECTION($docElements)
 $docElements:=WP Lire elements($myDoc;wk type paragraph)
  //retourne une collection contenant seulement les éléments paragraphes

 Vous souhaitez alterner l'alignement et la couleur des paragraphes dans un document :

 C_COLLECTION($col)
 C_OBJET($obj)
 C_OBJET($body)
 C_ENTIER LONG($i;$n)
 $col:=Creer collection
 $body:=WP Lire corps(myDoc)
 $col:=WP Lire elements($body;wk type paragraph)
 $i:=0
 $n:=$col.length
 Boucle($i;0;$n-1)
    $obj:=$col[$i]
    WP REINITIALISER ATTRIBUTS($obj)
    WP FIXER ATTRIBUTS($obj;wk font bold;wk false)
    WP FIXER ATTRIBUTS($obj;wk font italic;wk false)
    Si($i%2=0)
       WP FIXER ATTRIBUTS($obj;wk text align;wk left)
       WP FIXER ATTRIBUTS($obj;wk font bold;wk true)
       WP FIXER ATTRIBUTS($obj;wk text color;"#804040")
       WP FIXER ATTRIBUTS($obj;wk margin right;"5cm")
       WP FIXER ATTRIBUTS($obj;wk margin left;"1cm")
    Sinon
       WP FIXER ATTRIBUTS($obj;wk text align;wk right)
       WP FIXER ATTRIBUTS($obj;wk font italic;wk true)
       WP FIXER ATTRIBUTS($obj;wk text color;"#404020")
       WP FIXER ATTRIBUTS($obj;wk margin left;"5cm")
       WP FIXER ATTRIBUTS($obj;wk margin right;"1cm")
    Fin de si
 Fin de boucle



Voir aussi  

WP Lire element par ID
WP Lire sauts
WP Plage tableaux

 
PROPRIÉTÉS 

Produit : 4D
Thème : 4D Write Pro - Langage
Numéro : 1550
Nom intl. : WP Get elements

Commande(s) éligible(s) à l'exécution dans un process préemptif

 
PAGE CONTENTS 
 
HISTORIQUE 

Créé : 4D v17
Modifié : 4D v17 R3
Modifié : 4D v19 R8

 
UTILISATION DE L'ARTICLE

4D Write Pro ( 4D v20 R7)