diff --git a/acrobat-plugin/src/Imposition-02-Livret.js b/acrobat-plugin/src/Imposition-02-Livret.js index a130965..060330a 100755 --- a/acrobat-plugin/src/Imposition-02-Livret.js +++ b/acrobat-plugin/src/Imposition-02-Livret.js @@ -247,52 +247,50 @@ CDImp.Livret.lancer = function (doc) { return; } - var choix = app.response({ - cQuestion: "Tapez I pour Imposer (creer un livret)\nou D pour Delivretiser (revenir a l'ordre de lecture) :", + var nPages = doc.numPages; + var reste = nPages % 4; + var info = "Document : " + nPages + " pages"; + if (reste !== 0) { + info += " (pas multiple de 4, " + (4 - reste) + " page(s) blanche(s) seront ajoutees a la fin)"; + } + + var saisie = app.response({ + cQuestion: info + "\n\nTapez une commande :\n I = Imposer (creer un livret)\n D = Delivretiser\n I,creep = Imposer avec chasse en mm (ex: I,0.5)\n\nExemples : I ou I,0.3 ou D", cTitle: "Livret / Delivretiser", cDefault: "I" }); - if (!choix) return; - choix = choix.toUpperCase(); + if (!saisie) return; + saisie = saisie.toUpperCase().replace(/\s/g, ""); - if (choix === "D") { + if (saisie === "D") { CDImp.Livret.delivretiser(doc); return; } - if (choix !== "I") { - app.alert("Choix non reconnu. Tapez I ou D."); + + var creepMm = 0; + if (saisie.indexOf(",") !== -1) { + var parts = saisie.split(","); + saisie = parts[0]; + creepMm = parseFloat(parts[1]) || 0; + } + + if (saisie !== "I") { + app.alert("Commande non reconnue. Tapez I ou D."); return; } - var nPages = doc.numPages; - var reste = nPages % 4; - if (reste !== 0) { - var nManque = 4 - reste; - var position = CDImp.Livret._demanderPositionPagesBlanches(nManque); - if (!position) { - return; // annulation utilisateur - } - CDImp.Livret.ajouterPagesBlanches(doc, nManque, position); + CDImp.Livret.ajouterPagesBlanches(doc, 4 - reste, "fin"); nPages = doc.numPages; } - var creepMm = CDImp.Util.demanderNombre( - "Compensation de chasse (creep) en mm par feuille (0 = aucune) :", - "Creer un livret", - 0 - ); - if (creepMm === null) { - return; // annulation utilisateur - } - var planches = CDImp.Livret.calculerOrdre(nPages); var destDoc; try { destDoc = CDImp.Livret.construireDocument(doc, planches, creepMm); } catch (e) { - CDImp.Util.erreur("Erreur lors de la construction du livret : " + e.toString()); + app.alert("Erreur lors de la construction du livret : " + e.toString()); return; }