Altova MapForce 2024 Enterprise Edition

Ce chapitre couvre les aspects liés à la syntaxe suivants : jetons, grammaire, opérations prises en charge, noms intégrés utilisés dans les calculs et fonctions d’expression. Pour les détails, voir les sous-sections ci-dessous.

 

Jetons

L’expression que vous saisissez pour une propriété spécifique est traitée dans une séquence de jetons qui doivent être conformes à la structure décrite dans la sous-section. Les espaces blancs entre les jetons sont insignifiants et ignorés.

 

Identifiants

Les identifiants intégrés sont utilisés pour référencer les objets intégrés. Les identifiants intégrés commencent avec une lettre majuscule ou minuscule ou un trait de soulignement (par ex., Top fait référence au niveau supérieur d’une région). Les identifiants utilisateur sont joints en crochets [ ] et peuvent contenir tout caractère Unicode (par ex., [Sep1] peut fait référence au côté le plus à gauche de la colonne de table appelée Description).

 

Jetons à caractère unique

Les jetons à caractère unique font partie intégrante des langages de programmation et sont généralement combinés pour créer des expressions complexes. Les jetons à caractère unique incluent ceci : (, ), {, }, ,, :, ..

 

Littéraux de nombre

Les littéraux de nombre représentent des valeurs numériques. Les littéraux de nombre n’ont pas de signe (ceci est géré comme opérateur unitaire) et doivent avoir au moins un chiffre avant et après le point décimal.

 

Littéraux de string

Les littéraux de string représentent des séquences de caractères inclus dans des guillemets doubles. Les littéraux de string peuvent contenir tout caractère Unicode et caractères d’échappement-barres obliques inversées spéciaux (par ex., le \ caractère représente un saut de ligne).

 

Littéraux de couleur

Les littéraux de couleur représentent des valeurs de couleur. Les littéraux de couleur prennent la même forme que HTML et CSS et utilisent trois ou six chiffres (par ex., #FFF est un code couleur hexadécimal qui représente le blanc).

 

Opérateurs

Les opérateurs sont des symboles qui sont utilisés pour exécuter des opérations diverses, telles que comparer des valeurs, exécuter des calculs mathématiques, concaténer des strings, etc. Les opérateurs suivants sont pris en charge: +, -, *, /, &, |, =, !, <, >, ^, %.

 

Grammaire

Cette sous-section décrit les aspects suivants de la grammaire : les expressions binaires et unaires.

 

Expressions binaires

Une expression binaire est une expression qui contient deux opérandes et un opérateur qui spécifie une action (par ex., multiplication) à exécuter sur les opérandes.

 

Les opérateurs multiplicatifs (*, /), additifs (+, -) et logiques (&&, ||, !) sont des opérateurs associatifs gauche, ce qui signifie que les opérateurs de la même précédence de l’opérateur sont traités de gauche à droite (par ex., dans l’expression 5+2*4, la multiplication est calculée avant l’addition, car la multiplication est une précédence plus élevée qu’une addition). Les opérateurs associatifs gauche peuvent être en chaîne.

 

Les opérateurs d’égalité (==, !=, =), relationnels (<, >, , ) et généraux (les opérateurs ne sont pas inclus dans d’autres classes) ne sont pas associatifs et, pour cette raison, mettre en chaîne de tels opérateurs sans parenthèses résulte en une erreur d’analyse.

 

Expressions unaires

Une expression unaire est une expression qui contient uniquement une opérande et un opérateur unaire qui agit sur cette seule opérande. Les expressions unaires prises en charge sont décrites ci-dessous.

 

Une expression référence built-in est un identifiant, un identifiant suivi par une séquence de sélecteurs de membres, ou un identifiant suivi par un tuple, qui est un appel de fonction.

Une expression référence de l’utilisateur est la même qu’une référence intégrée á l’exception qu’aucun appel de fonction n’est possible.

Une expression opérateur de préfixe unaire est un opérateur qui agit sur une seule opérande et est placé avant l’opérande. Certains opérateurs de préfixe unaires sont +, -, !, ++, --.

Une expression littéral de string : voir la description dans Littéraux de string dans la sous-section Jetons ci-dessus.

Une expression nombre est un littéral de nombre avec un suffixe optionnel, qui peut être tout identifiant built-in. Ce type d’expression peut être utile, par exemple, pour des littéraux de distance.

Une expression littéral de couleur : voir la description dans Littéraux de couleur dans la sous-section Jetons ci-dessus.

Les expressions Tuple peuvent être de types suivants : (i) un tuple vide qui ne contient aucun élément et est représenté comme (); (ii) un tuple singleton qui contient un seul élément (par ex., (50,)); (iii) tous les autres tuples, qui contiennent au moins deux valeurs (par ex., 5pt, « Hello ») est un tuple avec une distance comme sa première valeur et un string comme sa seconde valeur).

Une expression structure est semblable à une expression tuple, avec la différence que des membres tuple ont des indices qui les identifient, mais les membres de structure ont des noms à la place des indices. Contrairement à un tuple, une structure de membre unique est toujours une structure et a un nom. Toutefois, une structure vide est équivalente à un tuple vide. Exemple d’une structure : { X: 30pt, Y: -20pt } est une structure avec des membres X et Y, dont les deux sont des distances.

 

Opérations prises en charge

Cette sous-section décrit les opérations prises en charge.

 

Nombre

Les nombres peuvent être ajoutés, soustraits, annulés, multipliés, divisés et comparés. L’Extracteur PDF prend en charge les fonctions paires et impaires pour vérifier si un nombre est paire ou impaire. Le résultat sera indéfini si un nombre n’est pas un entier.

 

Booléen

Des opérations booléennes acceptent les comparaisons d’égalité (==, !=), conjonctions logiques (AND), et disjonctions (OR).

 

Emplacements

L’emplacement spécifie la position d’un bord sur la page. Les opérations de l’emplacement vous permettent de placer un bord sur la page. Généralement, vous faites ceci en utilisant, par exemple, un bord ou en ajoutant une distance au bord (par ex., gauche + 50pt). Les emplacements spécifiés dans la même direction cardinale peuvent être soustraits pour donner un emplacement de résultat (e.g., (Top + 500 pt) - (Top + 200pt) = Top+300pt).

 

Distances

La distance spécifie la distance entre les deux emplacements sur la page. Les fonctions de la distance sont mesurées en pt, in, cm, mm et pc, avec la même signification que dans CSS. Vous pouvez ajouter et soustraire les distances de même que multiplier une distance par un nombre. Il est également possible de diviser les distances pour obtenir le ratio.

 

Opérations avec rectangles

L’Extracteur PDF prend en charge les fonctions suivantes qui vous permettent de manipuler les rectangles :

 

 

Noms intégrés

L’Extracteur PDF prend en charge les noms intégrés qui peuvent être utilisés dans les calculs :

 

Gauche : Le bord gauche de la page actuelle. Gauche est un alias de PageRect.Left.

Top : Le bord supérieur de la page actuelle. Top est un alias de PageRect.Left.

Droite : le bord droit de la page actuelle. Droite est un alias de PageRect.Left.

Bas : le bord du bas (inférieur) de la page actuelle. Droite est un alias de PageRect.Left.

PageRect: Un rectangle définissant les limites de la page actuelle. Le nom built-in PageRect est utile en combinaison avec les fonctions de traitement du rectangle telles inflate (voir Opérations avec Rectangles ci-dessus).

PageNumber : le numéro de page de la page actuelle.

 

© 2018-2024 Altova GmbH