Donnez vie à vos documents numériques !
 

Modification du niveau de signets

abracadabraPDF Forums PDF – Général Modification du niveau de signets

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #45248
    bebarth
    Maître des clés

    Boujour,
    je cherche à rédiger un script sur la modification du niveau parent/enfant de certains signet. Le fichier joint sera certainement plus explicite, mais voici ce que je voudrais faire :
    j’ai un certain nombre de signets tous définis avec leurs propriétés (style, action, …) et leurs enfants (ou non) -> Signet 0, Signet 1, Signet 2, Signet 3,…
    Le but est de modifier le niveau de tous les signets après Signet 1 (deviennent ses enfants) tout en gardant leurs propriétés et leurs enfants respectifs…
    :Euuuh:
    Je pensais utiliser la propriété “parent” des “bookmark” ma je n’arrive pas à la manipuler. Est-ce d’ailleurs la bonne méthode ?
    Je cherche donc quelqu’un qui pourrais m’aider ou m’indiquer où je pourrais trouver un/des exemple(s) pour m’aider à rédiger ce script.
    merci d’avance.
    @+
    :mur:

Affichage de 4 réponses de 1 à 4 (sur un total de 4)
  • Auteur
    Réponses
  • #59605
    Merlin
    Maître des clés

    Bonjour.

    Avec JavaScript je ne sais pas, mais avec l’interface d’Acrobat c’est un jeu d’enfant.
    Il faut sélectionner le signet 2 et ensuite sélectionner le dernier signet en appuyant sur la touche Majuscule de façon à sélectionner aussi tous les intermédiaires.
    Il ne reste plus qu’à glisser toute cette sélection dans le signet 1.

    :Smiley15:

    #59606
    bebarth
    Maître des clés

    Bonjour Merlin,
    …c’est ce que je fait depuis des années, et des fois plusieurs fois par jour. Maintenant je suis en mode ou je cherche à me simplifier les tâches !!!
    après une bonne nuit de sommeil (!!!!), voici donc ce que j’ai réussi à faire (ce qui répond à mon problème) si ça peut servir à quelqu’un :

    var bkm = this.bookmarkRoot;
    var bkmnb = bkm.children.length;
    var bmparent = bookmarkRoot.children[1];
    for (var i = 2; i {
    var bmenfant = bookmarkRoot.children[2];
    bmparent.insertChild(bmenfant, bkmnb-2);
    }

    Ce n’était en fait pas très compliqué. En tant qu’autodidacte en javascript, avec l’aide du forum bien évidemment, ce n’est pas toujours facile de comprendre les exemples fournis dans l’API Reference. Je pense que certaines fois il me manque quelques notions de base…
    @+
    :bonjour:

    #59607
    bebarth
    Maître des clés

    …la preuve, le script fonctionnait bien en script d’action mais pas en script d’application. Il a fallut rajouter des “this” pour qu’il fonctionne dans les 2 cas :
    var bkm = this.bookmarkRoot;
    var bkmnb = bkm.children.length;
    var bmparent = this.bookmarkRoot.children[1];
    for (var i = 2; i var bmenfant = this.bookmarkRoot.children[2];
    bmparent.insertChild(bmenfant, bkmnb-2); }
    @+
    :joker:

    #59608
    Merlin
    Maître des clés

    c’est ce que je fait depuis des années, et des fois plusieurs fois par jour. Maintenant je suis en mode ou je cherche à me simplifier les tâches !!!

    Je n’ai qu’un seul mot : bravo !
    :bonjour:

Affichage de 4 réponses de 1 à 4 (sur un total de 4)
  • Vous devez être connecté pour répondre à ce sujet.