Donnez vie à vos documents numériques !
 

Indexation des renvois de page dans document PDF. – RÉSOLU

abracadabraPDF Forums PDF – Général Indexation des renvois de page dans document PDF. – RÉSOLU

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

    Bonjour,

    Comme pratiquement tous les ans maintenant, je travaille sur mon CD-ROM qui contient un catalogue (1600 pages) en 3 langues.
    Jusqu’à présent, l’indexation des renvois de page dans le texte (see page…) était fait manuellement. Mais cette année, avec l’automatisation des renvois dans la base de données, il y en a vraiment trop pour le faire manuellement. Surtout qu’avec les 3 langues, le travail doit être fait 3 fois, car ne sont pas situé exactement au même endroit.

    Dans “Acrobat JavaScript Scripting Reference”, j’ai trouvé un script qui repère tous les mots “Acrobat” et fait un renvoi vers le site adobe. J’ai essayé et ce script fonctionne parfaitement avec ma version Acrobat 8.

    Je pense que pour un pro de javascript, l’adaptation à mon problème ne devrait pas trop poser de problème. Pour ma part, je balbutie avec le javascript une fois par an, et cela risque de me prendre plusieurs heures, voir journées.
    Y aurait-il une personne qui n’est pas encore en vacances ou déjà revenue, et qui pourrait m’aider.
    Merci d’avance, ci-dessous le script Adobe.
    bebarth

    for (var p = 0; p {
    var numWords = this.getPageNumWords(p);
    for (var i=0; i{
    var ckWord = this.getPageNthWord(p, i, true);
    if ( ckWord == “Acrobat”)
    {
    var q = this.getPageNthWordQuads(p, i);
    // convert quads in default user space to rotated
    // user space used by Links.
    m = (new Matrix2D).fromRotated(this,p);
    mInv = m.invert()
    r = mInv.transform(q)
    r=r.toString()
    r = r.split(“,”);
    l = addLink(p, [r[4], r[5], r[2], r[3]]);
    l.borderColor = color.red
    l.borderWidth = 1
    l.setAction(“this.getURL(‘http://www.adobe.com/’);”);
    }
    }
    }

  • Vous devez être connecté pour répondre à ce sujet.