abracadabraPDF › Forums › PDF – Général › javascript: intégration de pages à partir de bookmarks › Répondre à : javascript: intégration de pages à partir de bookmarks
Ce script, intégré à un fichier baptisé Insertion.js placé dans le répertoire Javascripts d’Adobe va ajouter des fonctionnalités à Acrobat:
Un item apparaît dans le menu « Outils » pour lancer la fonction.
Le script va lire le nom du document à insérer et la page de destination dans la liste élaborée précédemment et propose l’insertion. Après insertion la liste est remise à jour.
Il faudrait maintenant tester et rendre fiable ce script pour qu’il soit utilisable sur une série de signets et non plus sur un seul. C’est un travail conséquent que je ne peux vous proposer aujourd’hui car je suis pas mal sollicité. Je reviens d’ici une dizaine de jours avec une solution plus pédagogique…(vacances !)
function insertDoc()
{
//Tester la version du Viewer, le script étant écrit pour des versions ultérieures à 5
if(app.viewerVersion>5)
{
//Noter le chemin du répertoire de travail
repertoirebase=this.path.substring(0,(this.path.length-this.documentFileName.length));
console.println(« Répertoire de base: »+repertoirebase);
//Noter l’indice de la sélection
indice=this.getField(« Liste »).currentValueIndices;
//Noter la page du signet où insérer le document
pageinsert=this.getField(« Liste »).getItemAt(indice,true)-1;
console.println(« Page où on devra insérer le document= »+pageinsert);
//Elaborer le chemin du document à insérer
pdfdoc=repertoirebase+this.getField(« Liste »).getItemAt(indice,false)+ ».pdf »;
console.println(« Chemin complet du document à insérer= »+pdfdoc);
reponse=app.alert( {
cTitle: « Ajout d’un document »,
cMsg: « Insérer le document « »+this.getField(« Liste »).getItemAt(indice,false)+ ».pdf » à la page « +pageinsert,
nIcon:1,
nType:2});
if(reponse==4)
{
//Insérer le document à la page
this.insertPages(pageinsert,pdfdoc);
//Se placer au droit de la page insérée.
this.pageNum=pageinsert;
//Remettre la liste des signets à jour !
signets();
}
}
}
console.println(« Fonction insertDoc() active »)
app.addMenuItem({
cName: « Insérer un document listé »,
cParent: « Tools »,
cExec: »insertDoc(); »,
nPos: -1})
