Donnez vie à vos documents numériques !
 

Répondre à : Fractionnement doc et enregistrement avec nom spécifique

abracadabraPDF Forums PDF – Général Fractionnement doc et enregistrement avec nom spécifique Répondre à : Fractionnement doc et enregistrement avec nom spécifique

#63652
bebarth
Maître des clés

bonsoir,
Là, ça devrait marcher qu’il y ait ou pas des mots sur la page et qu’il y ait COMMUNE/SECTEUR ou pas !

Code:
console.show();
console.clear();
//Début durée
d0=new Date();
debut=util.printd(“dd-mm HH:MM”,d0);
console.println(“Début process:”+debut);
//Initialisation des variables
var Chemin = this.path;
var PathSansExt = Chemin.substring(0,Chemin.length-4);
var nomDocument = this.documentFileName;
var repertoire = Chemin.substring(0,Chemin.length-nomDocument.length);
for (var p = 0; p < this.numPages; p++) {
    var ville = “”;
    var ckWord = “”;
    var i = 0;
    //recherche du mot COMMUNE
    var numWords = this.getPageNumWords(p);
    console.println(“La page:”+(p+1)+” comporte “+ numWords +” mots”);
    if (numWords > 0) {
    try {
        while (ckWord != “COMMUNE” && ckWord != “SECTEUR”) {
            var ckWord = this.getPageNthWord(p, i, true);
            //Coordonnées du mot
            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) //Coordonnées champ du mot trouvé
            r=r.toString() //Conversion en chaîne
            r = r.split(“,”); //Séparation de la chaîne à chaque virgule “,”
            //Position verticale du mot
            var posVert = r[3];
            i=i+1;
        }
        var posMot = posVert;
        while (posMot == posVert) {
            var ckWord = this.getPageNthWord(p, i, true);
            //Coordonnées du mot
            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) //Coordonnées champ du mot trouvé
            r=r.toString() //Conversion en chaîne
            r = r.split(“,”); //Séparation de la chaîne à chaque virgule “,”
            //Position verticale du mot
            var posMot = r[3];
            i=i+1;
            if (posMot == posVert) {var ville = ville + ” ” + ckWord;}
        }
        var str = ville;
        var debutVille = ville.substring(0,1);
        if (debutVille ==” “) {
            var res = str.slice(2);
        } else {
            var res = str.slice(1);
        }
        var ville = res;
        if (ckWord == “COMMUNE”) {
            console.println(“Commune : “+ville);
        } else {
            console.println(“Secteur : “+ville);
        }
        if (ville != “”) {
            this.extractPages({
                nStart: p,
                cPath: repertoire+ville+”.pdf”
                });
        }
    } catch(e) {
        app.alert({cMsg:”La page “+ (p+1) + ” ne contient ni COMMUNE ni SECTEUR.”, nIcon:2});
        }
    }
}
//Fin durée
df=new Date();
fin=util.printd(“dd-mm HH:MM”,df);
console.println(“Fin process:”+fin);
delta=(df.valueOf()-d0.valueOf())/1000/60;
console.println(“Duree process:”+delta+” minutes”);

Si tu ne veux pas le message d’alerte, tu enlève la ligne

Code:
        app.alert({cMsg:”La page “+ (p+1) + ” ne contient ni COMMUNE ni SECTEUR.”, nIcon:2});

@+
:bonjour: