abracadabraPDF › Forums › PDF – Général › Création de champs sur quelques pages seulement. › Répondre à : Création de champs sur quelques pages seulement.
9 octobre 2019 à 21:22
#66326
bebarth
Maître des clés
Voici un script qui pourrait répondre à ce que tu veux faire :
Code:
var Reponse=””;
while (Reponse==””) {
var Reponse=app.response({
cQuestion: “Indiquez les pages où insérer un champ.”,
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);
// 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;
} else {
var debutPlage=Number(str)-1;
var finPlage=Number(str)-1;
}
try {
for (var nPage=debutPlage; nPage<=finPlage; nPage++) f=this.addField ("myField", "text", nPage, [200, 600, 300, 660]);
} catch(e) {}
}
}
while (Reponse==””) {
var Reponse=app.response({
cQuestion: “Indiquez les pages où insérer un champ.”,
cTitle: “Liste des pages”,
cLabel: “Pages :”,
cDefault: “”
});
// Test des caractères de la réponse
for (var i=0; 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);
// Découpe le réponse en une table
var laTable=Reponse.split(“,”);
// Traitement de la table
for (var j=0; j
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;
} else {
var debutPlage=Number(str)-1;
var finPlage=Number(str)-1;
}
try {
for (var nPage=debutPlage; nPage<=finPlage; nPage++) f=this.addField ("myField", "text", nPage, [200, 600, 300, 660]);
} catch(e) {}
}
}
J’ai juste fait quelques testes…
@+
:bonjour: