Donnez vie à vos documents numériques !
 

Répondre à : Création de champs sur quelques pages seulement.

abracadabraPDF Forums PDF – Général Création de champs sur quelques pages seulement. Répondre à : Création de champs sur quelques pages seulement.

#66328
bebarth
Maître des clés

bonjour,
Voici une version un peu améliorée où le script :

  • Supprime les doubles caractères
  • Classe la plage des pages
  • Vérifie si la page indiquée existe
  • [/list]Il y aurait certainement d’autres vérifications à apporter…

    Code:
    var Reponse= » »;
    while (Reponse== » ») {
        var Reponse=app.response({
            cQuestion: « Indiquez les pages où insérer un champ :n• une virgule (,) pour séparer les pages ou les plagesn• un tiret (-) pour séparer les pages des plagesnExemple : 1,3-5,9 »,
            cTitle: « Liste des pages »,
            cLabel: « Pages : »,
            cDefault: «  »
        });
        // Test des caractères de la réponse
        for (var i=0; i        var n=Reponse.charCodeAt(i);
            if (n>57 || (n<48 && n!=44 && n!=45)) Reponse="";
        }
    }
    if (Reponse!= » ») {
        // Suppression des , ou – en début ou fin de réponse
        if (Reponse.startsWith(« , »)) var Reponse=Reponse.substring(1);
        if (Reponse.startsWith(« -« )) var Reponse=Reponse.substring(1);
        if (Reponse.endsWith(« , »)) var Reponse=Reponse.substring(0,Reponse.length-1);
        if (Reponse.endsWith(« -« )) var Reponse=Reponse.substring(0,Reponse.length-1);
        // Suppression des incorrects
        var ok= » »;
        while (ok== » ») {
            var str=Reponse;
            var n=str.indexOf(« –« );
            if (n>-1) {
                Reponse=Reponse.replace(/–/g, »-« );
                var ok= » »;
            } else {
                var ok= »OK »;
            }
            var n=str.indexOf(« ,, »);
            if (n>-1) {
                Reponse=Reponse.replace(/,,/g, », »);
                var ok= » »;
            } else {
                var ok= »OK »;
            }
            var n=str.indexOf(« ,-« );
            if (n>-1) {
                Reponse=Reponse.replace(/,-/g, », »);
                var ok= » »;
            } else {
                var ok= »OK »;
            }
            var n=str.indexOf(« -, »);
            if (n>-1) {
                Reponse=Reponse.replace(/-,/g, », »);
                var ok= » »;
            } else {
                var ok= »OK »;
            }
        }
        // Découpe le réponse en une table
        var laTable=Reponse.split(« , »);
        // Traitement de la table
        for (var j=0; j        // Vérification page simple ou plage
            var str=laTable[j];
            var n=str.indexOf(« -« );
            if (n>-1) {
                var debutPlage=Number(str.substring(0,n))-1;
                var finPlage=Number(str.substring(n+1))-1;
                // Classification
                var laPlage=[debutPlage, finPlage];
                laPlage.sort(function(a, b){return a-b});
                var debutPlage=laPlage[0];
                var finPlage=laPlage[1];
            } else {
                var debutPlage=Number(str)-1;
                var finPlage=Number(str)-1;
            }
            if (debutPlage<0) debutPlage=0;
            if (finPlage>this.numPages-1) finPlage=this.numPages-1;
            for (var nPage=debutPlage; nPage    }
    }

    @+
    :bonjour: