abracadabraPDF › Forums › PDF – Général › Fractionnement doc et enregistrement avec nom spécifique › Répondre à : Fractionnement doc et enregistrement avec nom spécifique
20 mars 2018 à 21:44
#63652

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”);
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: