Vous avez à modifier une tête-de-lettre qui comporte en pied une adresse sur deux lignes. La nouvelle adresse étant plus longue doit comporter trois lignes, mais la dernière (troisième) ligne de la nouvelle adresse doit être au même niveau que la dernière (deuxième) ligne de l'ancienne adresse. Dans ce cas bien sûr l'adresse devrait logiquement être déjà dans un bloc avec le texte aligné en pied (Options de bloc de texte > Justification verticale > Alignement > Bas) mais le stagiaire qui s'était chargé de la précédente édition avait laissé l'alignement du bloc par défaut sur "Haut").

Vous pouvez manuellement ajouter un repère au niveau de la dernière ligne, régler l'alignement sur "Bas" et remonter le bloc pour réaligner à vue de nez la dernière ligne là ou elle se trouvait, avant de modifier l'adresse, ou bien vous pouvez utiliser ce script qui permet de "copier-coller" la ligne de base (la coordonnée verticale) d'un texte sélectionné[1:

Dans le cas présent vous n'aurez qu'à sélectionner la dernière ligne de texte, lancer le script qui vous ouvrira une nouvelle palette, cliquer sur le bouton "Copier la ligne de base", changer le paramètre du bloc sur "Options de bloc de texte > Justification verticale > Alignement > Bas", sélectionner l'action "Déplacer le bloc verticalement" dans le menu déroulant de la palette et cliquer sur le bouton "Coller la ligne de base".

Dans le DOM JavaScript d'InDesign, la propriété "baseline" (coordonnée verticale) d'un caractère est en lecture seule, ce qui est logique car elle résulte de nombreux paramètres. D'où l'idée de rendre cette propriété éditable en créant cette palette qui vous propose divers actions possibles pour obtenir la valeur de "baseline" souhaitée en agissant sur un seul paramètre à la fois : vous pouvez ainsi dans la version actuelle.

  • copy paste baseline frModifier décalage minimum 1re ligne de base du bloc[2,
  • Modifier les marges intérieures du bloc,
  • Déplacer le bloc verticalement,
  • Modifier le décalage vertical des caractères,
  • Modifier l'interlignage du paragraphe[2,
  • Modifier espace avant/après paragraphe,
  • Modifier espace après paragraphe précédent/avant paragraphe suivant,
  • Redimensionner le bloc,
  • Mettre le bloc à l'échelle.

Dans certains cas vous aurez un message d'erreur vous avertissant que la valeur de "baseline" demandée est impossible à obtenir en agissant uniquement sur le paramètre sélectionné, par exemple lorsqu'il faudrait appliquer au paramètre une valeur négative alors qu'il ne peut être que nul ou positif, (ex. : décalage minimum 1re ligne de base du bloc, espace avant/après paragraphe) ou que la modification testée réduirait l'espace disponible dans le bloc jusqu'à provoquer du texte en excès.

Un certain nombre d'actions parmi celles proposées peuvent être effectuées de plusieurs façons selon la position du localisateur de point de référence P RefPointLocator1 22x22 N (de la palette Transformation ou Contrôle) : par exemple si vous sélectionnez l'action "Redimensionner le bloc" vous redimensionnerez le bas du bloc en positionnant le point de référence en haut, ou le haut du bloc  en positionnant le point de référence en bas (le choix n'étant utile que si les deux possibilités permettent d'influer sur la ligne de base, par exemple quand le texte est verticalement centré dans le bloc), de même pour l'action "Modifier espace avant/après paragraphe" vous modifierez l'espace après si vous positionnez le point de référence en haut, ou l'espace avant si vous positionnez le point de référence en bas.

Remarque : Ce script ne gère correctement que les blocs texte horizontaux, n'est prévu ni pour les textes curvilignes, ni pour les blocs textes affectés par une transformation et notamment par une rotation.

[1] avec une précision plus élevée que les trois décimales visibles par l'utilisateur dans l'interface d'InDesign : comme pour tous les scripts jsx la précision est de 15 chiffres en virgule flottante, par exemple pour une valeur entre 10 et 99 millimètres la précision est de 13 décimales, soit l'ordre de grandeur d'un noyau atomique.

[2] Ce script vous permettra également de constater une limitation qui n'est pas documentée par Adobe : quand vous mettez l'interlignage d'un texte à "0 pt", l'interlignage réel n'est pas zéro mais 0,01 pt (0,0035277777778 mm). De même, si vous essayez le réglage suivant « Options de bloc de texte > Options de ligne de base > Première ligne de base > Décalage : Fixe, Min. : 0 », la ligne de base de la première ligne de texte ne sera pas réellement au niveau du bord supérieur du bloc mais exactement 0,01 pt en dessous

 

Vous n'avez pas la possibilité de poster un commentaire.
Seuls les membres enregistrés sont autorisés à commenter. Si vous êtes enregistré, veuillez vous connecter.

Suivez Scriptopedia.org

feed-image Suivez Scriptopedia.org

Scriptopedia sur facebook

À propos de Scriptopedia.org

Une idée de Loic Aigon mis en page par Eddy.VH se veut être une bibliothèque de scripts pour les produits Adobe orientés PAO. Vous y trouverez des scripts de type JavaScript pour Photoshop, Illustrator, inDesign et Acrobat et de type ATN ( Actions pour Photoshop ).