Donnez vie à vos documents numériques !
 

Récupérer l’action d’un signet

abracadabraPDF Forums PDF – Général Récupérer l’action d’un signet

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

    bonjour,
    On peut définir l’action d’un signet avec setAction, mais peut-on récupérer cette action ? getAction n’existe apparemment pas !!!
    Plus précisément pour mon cas, je connais le nom d’un signet, et je voudrais savoir à quelle page il renvoie pour que cette page devienne ma page de référence…  :Euuuh:
    C’est possible ???
    @+
    :bonjour:

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

    …je crois que j’ai trouvé… du moins pour mon problème !
    Il suffit d’exécuter le signet avec “execute” et de récupérer le numéro de la page.
    http://help.adobe.com/en_US/acrobat/acrobat_dc_sdk/2015/HTMLHelp/index.html#t=Acro12_MasterBook%2FJS_API_AcroJS%2FBookmark_methods.htm%23TOC_executebc-2&rhtocid=_6_1_8_8_1_1
    Ça ne résout pas le problème pour toutes les actions possibles, mais pour un renvoi à la page ça fonctionne.
    @+
    :bonjour:

    #61789
    Merlin
    Maître des clés

    getAction n’existe apparemment pas

    Je n’ai rien trouvé non plus…  :joker:

    #61790
    bebarth
    Maître des clés

    …si ça intéresse quelqu’un !!!

    Code:
    // Document-level or folder-level JavaScript.
    function searchBookmarks(signet, nLevel, signetName) {
    if (signet.name == signetName) return signet;
    if (signet.children != null) {
    for (var i = 0; i < signet.children.length; i++) {
    var bkMark = searchBookmarks(signet.children, nLevel + 1, signetName);
    if (bkMark != null) break;
    }
    return bkMark;
    }
    return null;
    }
    // Redéfini la fonction pour une comparaison plus sophistiquée.
    function signetCompare(name1, name2) {return (name1 == name2);}

    // Recherche
    var signetName = app.response({
    cQuestion: “Nom du signet à trouver :”,
    cTitle: “Recherche et exécution du signet”
    });
    if (signetName != null) {
    var signet = searchBookmarks(this.bookmarkRoot, 0, signetName );
    if (signet != null) {
    signet.execute();
    app.alert(“Le signet “”+ signetName +”” renvoie à la page “+(this.pageNum+1)+”.”,3);
    }
    else app.alert(“Le signet “”+ signetName +”” n’a pas été trouvé.”);
    }

    @+
    :bonjour:

    #61791
    Merlin
    Maître des clés

    :bravo:

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