Donnez vie à vos documents numériques !
 

Merlin

Toutes mes réponses sur les forums

Affichage de 99 réponses de 397 à 495 (sur un total de 10,107)
  • Auteur
    Réponses
  • en réponse à : Duplication de plusieurs pages exemples #71258
    Merlin
    Maître des clés

    Bonjour

     

    Une page modèle (template) est une page, masquée ou non, qui peut être dupliquée (spawn) à l’identique autant de fois que nécessaire.

    On peut faire la même chose avec plusieurs pages modèle différentes.

    en réponse à : Action menu déroulant / signature #71254
    Merlin
    Maître des clés

    En France on (y compris les autoentrepreneurs) est obligé d’utiliser un logiciel de facturation agréé par l’administration fiscale.

    Le PDF est effectivement le format de stockage idéal, de préférence à la norme ISO PDF/A.

    en réponse à : Renommer plusieurs champs de formulaire avec JavaScript #71235
    Merlin
    Maître des clés

    “J’ai cherché mais je n’ai pas trouvé…”

    Moi non plus…

    😕

    en réponse à : Renommer plusieurs champs de formulaire avec JavaScript #71223
    Merlin
    Maître des clés

    “J’ai trouvé une façon hors script pour nettoyé les infos-bull de mes PDF, merci pour la piste.”

    Sinon il y a Tooltip Remover, qui est gratuit :

    Tooltips Remover

    en réponse à : Éviter la division par zéro #71216
    Merlin
    Maître des clés

    Bonjour

     

    La notation simplifiée ne permet pas d’éviter la division par zéro, il faut nécessairement utiliser JavaScript.

    Pour te donner la formule magique il faudrait connaitre les noms des trois champs utilisés dans l’opération.

    en réponse à : Action menu déroulant / signature #71211
    Merlin
    Maître des clés

    Bonjour

     

    1.

    “pour qu’une valeur s’affiche sous le format : yyyymmdd » une valeur de 01 à 14″.”

    Si je comprend bien la question, ce menu devrait présenter 14 plages horaires qu’il faudrait convertir au format Date ?

     

    2.

    “de base ma signature est intégrée dans la trame de fond de mon document (donc non modifiable) et j’ai un bouton caché qui une fois rempli verrouille et enregistre mon fichier”

    Pourquoi ne pas utiliser une vraie signature numérique, comme Acrobat Sign, qui aplati et donc verrouille automatiquement tous les champs de formulaire du document ?

     

    “Seulement, des patients m’ont rapporté que lorsqu’ils impriment ma facture, les infos remplies n’apparaissent pas mais uniquement mon fichier vide avec ma signature. Donc pas super même si cela n’arrive pas systématiquement.”

    Il faudrait savoir quel logiciel ils utilisent pour faire ça, sinon il existe des moyens pour forcer l’utilisateur à utiliser un “vrai” logiciel lecteur de PDF (Acrobat Reader, Foxit Reader, PDF Studio, …) qui reconnait (presque) toutes les spécifications du format PDF (alias norme ISO 32000).

     

    en réponse à : Signature en maintenant le clic gauche #71206
    Merlin
    Maître des clés

    Bonjour

     

    Le plus simple est d’utiliser la fonction “Demander des signatures électroniques” disponible dans le menu “Signer” d’Acrobat. Le destinataire n’a besoin que d’un navigateur web pour signer :

    https://helpx.adobe.com/fr/acrobat/using/send-for-signature.html

    Merlin
    Maître des clés

    👍

    Merlin
    Maître des clés

    Bonjour Océane

     

    J’ai mis du temps à retrouver ce sujet, la réponse est ici :

    Insertion d’une page entre chaque page d’un PDF

    en réponse à : Sélection d’image #71197
    Merlin
    Maître des clés

    “il va donc falloir que je crée autant d’icônes que j’ai de couleurs? c’est bien ca?”

    Oui.

    en réponse à : Sélection d’image #71186
    Merlin
    Maître des clés

    Bonjour

     

    Pour afficher un aplat de couleur il suffit d’attribuer sa valeur RVB comme couleur de fond à un champ.

    Donc zéro stockage et poids de fichier minimal.

    Par nature un écran ne peut afficher que des couleurs RVB, pour les Pantone hors gammut, ou autres, l’équivalent numérique Lab/RVB est toujours plus fidèle à l’écran qu’une image.

    en réponse à : Renommer plusieurs champs de formulaire avec JavaScript #71180
    Merlin
    Maître des clés

    Il colle sur place sous réserve que le format de page de départ et d’arrivée soit identique.

    Sinon oui, c’est plutôt au petit bonheur la chance.

     

    en réponse à : Renommer plusieurs champs de formulaire avec JavaScript #71178
    Merlin
    Maître des clés

    “un autre point que je reproche a PDF.. quand on copie un un champs.. (visuellement et manuellement) il le place toujours en bas.. pourquoi si on sélectionne un champs il pourrait pas le mettre a l bonne place.. “

    Par défaut Acrobat Pro DC colle “sur place”, c’est à dire au même endroit sur la page.

    Parfois c’est embêtant mais il faut faire avec.

    Sinon on peut dupliquer un ou plusieurs champs en appuyant sur la touche CTRL (CMD sur Mac) lors du déplacement.

    Si en plus on appuie sur la touche majuscule la duplication se fait en ligne droite (horizontal/vertical).

    Merlin
    Maître des clés

    Remplace ton script par celui ci, je te laisse le soin de modifier le texte des alertes :

    (userName c’est le texte de l’info-bulle)

     

    var emptyFields = [];

    for (var i=0; i<this.numFields; i++) {

    var f= this.getField(this.getNthFieldName(i));

    if (f.type!="button" && f.required && f.value == f.defaultValue) {
    if (f.userName) {emptyFields.push(f.userName);}
    else {emptyFields.push(f.name);}

    }
    }

    if (emptyFields.length>0) {app.alert("Merci de compléter les champs obligatoires suivants :\n\n" + emptyFields.join("\n"));}

    else {app.alert("All Required Fields have been answered. Thank you for filling out this form.");}

    en réponse à : Script pour valider la présence d’une signature #71153
    Merlin
    Maître des clés

    À mon avis ce n’est pas possible, ce type d’outil n’est pas détectable avec JavaScript.

    en réponse à : Script pour valider la présence d’une signature #71150
    Merlin
    Maître des clés

    Bonjour

     

    Qu’est-ce que c’est “une icône plume” ?

    L’outil de commentaire ?

    en réponse à : Demander une photo #71130
    Merlin
    Maître des clés

    Bonjour

     

    Il faut savoir que l’image ainsi ajoutée n’est pas une donnée comme les autres : il n’existe aucun moyen simple de la récupérer (contrairement aux autres données qu’on peut facilement exporter).

    en réponse à : Renommer plusieurs champs de formulaire avec JavaScript #71096
    Merlin
    Maître des clés

    Bonjour

     

    Il y a une autre façon de faire, souvent plus rapide : supprimer tous les champs sauf un, le nommer soigneusement (par exemple “DJCK”) et le dupliquer avec la fonction “Créer plusieurs copies” disponible au clic-droit qui nomme les champs de façon logique et séquentielle.

     

     

    Attachments:
    You must be logged in to view attached files.
    Merlin
    Maître des clés

    J’ai mis le script ci-dessus en format “Code”, ce qui évite les ajouts automatiques d’espaces et de guillemets à chevrons dans le texte.

    Ça devrait mieux fonctionner.

    en réponse à : Changer de couleur #71069
    Merlin
    Maître des clés

    👍

    en réponse à : Scan et bords noirs #71050
    Merlin
    Maître des clés

    Bonjour

     

    Un truc que j’ai longtemps utilisé c’est de scanner avec le capot ouvert, ça force le contraste entre le papier et rien. Mais ça ne fonctionne pas avec du papier trop fin, il faut au moins du 50 ou 60 g/m2.

    Pour les papiers plus fins je recouvrait le document d’une feuille plus grande que lui, en papier noir mat suffisamment épais. Cette méthode est également très efficace pour supprimer les effets de transparence (apparition fantôme des caractères du verso).

     

    L’autre truc plus moderne c’est d’utiliser Acrobat Pro DC.

    Je ne suis pas là pour pousser à l’achat mais il propose des fonctions “d’amélioration du document numérisé” qui sont très efficaces notamment contre les bords noirs ou grisés.

    Ces fonctions n’existent pas dans Acrobat X.

     

    L’OCR a aussi fait d’énormes progrès.

     

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : abracadabraScripts #71044
    Merlin
    Maître des clés

    Bonjour

     

    Effectivement, 1000 excuses.

    Il faut supprimer la dernière accolade, qui est en trop.

     

    en réponse à : Afficher un calcul d’arrondi #71042
    Merlin
    Maître des clés

    👍

    en réponse à : Menu #71040
    Merlin
    Maître des clés

    Le secret de la Console c’est qu’après y avoir collé un script il faut tout sélectionner et appuyer sur la touche Entrée (Enter) pour l’exécuter.

    Sachant que la touche Entrée n’est pas la touche Retour (Return).

     

    Sur Mac le dossier Javascripts se trouve là :

    Users/NOM/Library/Application Support/Adobe/Acrobat/DC/JavaScripts

     

    Cet utilitaire génial t’aidera à localiser les autres sous-dossiers d’Acrobat :

    Show_me_the_path

    en réponse à : Afficher un calcul d’arrondi #71038
    Merlin
    Maître des clés

    Bonjour

     

    La première chose a déterminer c’est la façon d’arrondir.

    “Math.floor” arrondit vers l’entier inférieur, est-ce ce que tu veux ?

    JavaScript permet aussi d’arrondir vers l’entier supérieur (Math.ceil), ou bien d’arrondir au plus proche (Math.round).

    en réponse à : Menu #71035
    Merlin
    Maître des clés
    • Je ne peux pas vendre un script dont je ne suis pas l’auteur.
    • De toute façon c’est un utilitaire fait pour Acrobat Pro, il ne fonctionnera pas tel quel avec Foxit Editor.
    • Acrobat Reader Pro n’existe pas, c’est l’un (Reader) ou l’autre (Pro).

     

    en réponse à : Addicionner des champs texte #71034
    Merlin
    Maître des clés

    En script de calcul dans le champ cible.

    en réponse à : Remplissage automatique des champs en lecture seule #71018
    Merlin
    Maître des clés

    Bonjour

     

    La propriété “readonly” (lecture seule) est partagée par toutes les instances de champs ayant exactement le même nom.

    Il faudrait donc que les champs de la page 1 n’aient pas le même nom que ceux des autres pages, qui eux peuvent être identiques.

    Et il faudrait un script de validation qui pousse chaque valeur saisies page 1 vers le champ correspondant dans les autres pages.

    en réponse à : Impossible d’enregistrer un document PDF #71016
    Merlin
    Maître des clés

    😎

    Merlin
    Maître des clés

    👍

    en réponse à : Envoi de formulaire par Mail ne fonctionne plus ! #71014
    Merlin
    Maître des clés

    Merci !

    en réponse à : Impossible d’enregistrer un document PDF #71005
    Merlin
    Maître des clés

    Avec Reader on peut ajouter une pièce jointe avec l’outil de Commentaire “Ajouter une PJ”.

    Avec Reader on peut supprimer ou remplacer une pièce jointe qui a été ajoutée avec l’outil de Commentaire “Ajouter une PJ”.

    Mais avec Reader on ne peut pas supprimer ni remplacer une pièce ajoutée directement via le panneau “Pièce jointe” avec Acrobat Pro.

     

    C’est peut-être une piste.

     

    en réponse à : Impossible d’enregistrer un document PDF #71003
    Merlin
    Maître des clés

    Bonjour

     

    Je ne vois pas d’image jointe, mais a priori ce serait dû au fait que les élèves utilisent Acrobat Reader qui ne permet d’enregistrer les modifications dans une pièce jointe.

    en réponse à : Datamatrix lié à liste #71002
    Merlin
    Maître des clés

    je n’arrive pas à mettre résolu ?

    Ça n’existe pas dans ce forum et ce serait inutile puisque quasiment tous les sujets sont résolus.

    😉

    en réponse à : Datamatrix lié à liste #70998
    Merlin
    Maître des clés

    Bonjour

     

    On peut aussi vider le champ “Référence au formulaire publié” :

     

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Ink Coverage pour Pantone #70992
    Merlin
    Maître des clés

    Bonjour

     

    Qu’entends tu par “couverture d’encre” ?

    Veux tu savoir quelle est la surface de papier encrée ou bien veux tu savoir le pourcentage de chaque encre à un endroit donné ?

    en réponse à : Permutation de contenu de champs #70984
    Merlin
    Maître des clés

    “Pour moi ce document devrait ne contenir que deux pages : le plan et la « page élève ».”

    Je pensais à certains documents que j’avais déjà fait, je viens de regarder mais ça ne va pas aller. Il y a une mini base de données mais avec une seule fiche affichée à la fois, pas 16…

     

    en réponse à : Permutation de contenu de champs #70973
    Merlin
    Maître des clés

    Tu gagnerais en rapidité d’exécution si tu remplaçais :

    for (var l=1 ; l<18 ; l++){
    this.getField("place."+l).fillColor=color.white;}

    for (var i=1 ; i<18 ; i++){
    if (this.getField("place."+i).value < 1 | this.getField("place."+i).value>17) {
    app.alert({cMsg:"La valeur est hors de la plage", nIcon:1});}
    }

     

    Par :

    for (var i=1 ; i<18 ; i++){
    this.getField("place."+i).fillColor=color.white;}
    if (this.getField("place."+i).value < 1 | this.getField("place."+i).value>17) {
    app.alert({cMsg:"La valeur est hors de la plage", nIcon:1});}
    }

     

    Par ailleurs, de façon générale il est inutile de changer la lettre qui représente la valeur de l’index (l, i, j, m) car chaque boucle est indépendante. Tu peux donc utiliser le “i” à chaque fois.

    en réponse à : Permutation de contenu de champs #70972
    Merlin
    Maître des clés

    Bonjour

     

    Il y a une erreur dans ces deux lignes, donc le script doit s’arrêter quand il arrive dessus :

    this.getField("place."+j).fillColor=["RGB", 255, 255/255, 0];
    this.getField("place."+k).fillColor=["RGB", 255, 255/255, 0];

     

    Il faudrait l’écrire ainsi :

    this.getField("place."+j).fillColor=["RGB", 255/255, 255/255, 0/255];
    this.getField("place."+k).fillColor=["RGB", 255/255, 255/255, 0/255];

    Merlin
    Maître des clés

    Bonjour

     

    Je viens de vérifier, la pièce jointe a été supprimée du message original.

    Désolé.

     

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Permutation de contenu de champs #70966
    Merlin
    Maître des clés

    Bonjour

     

    Pour moi ce document devrait ne contenir que deux pages : le plan et la “page élève”.

    Les champs de la “page élève” étant remplis dynamiquement en fonction du nom sélectionné à partir d’un fichier texte placé en pièce jointe contenant les données.

    Ça résoudrait la plupart des problèmes.

     

     

    Merlin
    Maître des clés

    Tout le monde à ce problème parce-qu’une (vraie) signature numérique supprime toutes les actions, tous les calculs et tous les scripts du document.

    On ne peut rien faire de plus avec Acrobat, pour aller plus loin dans les processus de signature il faut prendre un abonnement Adobe Sign.

     

    en réponse à : Menu #70959
    Merlin
    Maître des clés

    Bonjour

     

    Ce script liste les signets et les affiche en menu depuis un bouton.

    C’est un morceau de code que j’ai acheté à PDFScripting : “Add Bookmark Menu Button to PDF”.

    https://www.pdfscripting.com/members/login.cfm?hpage=programs/fileinfo.cfm

     

     

    Merlin
    Maître des clés

    “Merlin est LE spécialiste en GREP !”

    🆒 🤓

    Merlin
    Maître des clés

    Bonjour

     

    Cette regex capte tous les chiffres entre parenthèses et capte aussi les parenthèses :

    \((?<=\()\d+?(?=\))\)

     

    À utiliser en Rechercher-remplacer ou bien en style GREP.

    Merlin
    Maître des clés

    Bonjour

     

    Quelle fonction utilises tu pour la signature ?

    Le menu “Remplir et signer” ?

    (“l’icône de la plume” ça ne me parle pas du tout)

    en réponse à : Calcul fiche de frais #70900
    Merlin
    Maître des clés

    “Est il possible que les valeurs a « 0 » s’affiche en blanc pour ne pas apparaître dans le tableau”

    Bonjour

     

    Place ce script en script de format personnalisé dans le champ “total” :

    if (event.value == 0) {event.value = ""};

    en réponse à : Liste déroulante qui masque ou affiche un champ #70880
    Merlin
    Maître des clés

    Je crois que ce que bebarth veut dire c’est qu’il est déconseillé d’utiliser la propriété hidden et qu’il vaut mieux utiliser display à la place :

    https://opensource.adobe.com/dc-acrobat-sdk-docs/acrobatsdk/html2015/Acro12_MasterBook/JS_API_AcroJS/Field_properties.htm?rhhlterm=display&rhsyns=%20#XREF_10117_display

     

    Et il a raison, par exemple hidden ne fonctionne pas avec Foxit Reader, qui ne reconnait que la propriété display.

     

    Adobe conserve les “propriétés remplacées” autant que possible pour des raisons de rétrocompatibilité mais ce n’est pas le cas de tous les éditeurs.

    en réponse à : Problème icone et champ image #70866
    Merlin
    Maître des clés

    Bonjour

     

    En fait dans cette ligne tu demande au champ bouton qui est cliqué (event.target) de transférer son icône/image dans le champ photo, ce qu’il fait :

    this.getField(this.getNthFieldName(i)).buttonSetIcon(event.target.buttonGetIcon());

     

    Il faut créer un autre bouton (masqué) ne contenant pas d’icône et transférer cette “non icône” vers le champ photo lors du reset. Comme ceci :

    this.getField(this.getNthFieldName(i)).buttonSetIcon(this.getField("Button1").buttonGetIcon());

     

    Ci-joint.

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Liste déroulante qui masque ou affiche un champ #70864
    Merlin
    Maître des clés

    Bonjour

     

    La réponse est : oui, mais non.

    Oui on peut le faire.

    Mais non car dès qu’un élément est utilisé plus d’une seule fois on a toujours intérêt à le mettre en variable. Parce-que c’est plus simple à programmer et parce-que le script s’exécute plus vite, même si ça se joue en millièmes de secondes.

     

    Et bravo pour ces premiers scripts !

    Merlin
    Maître des clés

    Bonjour

     

    Ça n’a rien à voir avec JavaScript !

    Un dessin vaut mieux qu’un long discours, voir pièce jointe.

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Liaison entre cases à cocher et listes déroulantes #70804
    Merlin
    Maître des clés

    Bonjour

     

    1 Il n’y a pas besoin de JavaScript.

    2 Si l’utilisateur coche une première case il doit pouvoir immédiatement remplir le menu correspondant sinon ça n’a pas de sens, ce serait plutôt déroutant pour l’utilisateur final et donc pas ergonomique.

    3 S’il est possible de cocher plus de 3 cases, pourquoi se limiter à 3/3 ?

     

    Merlin
    Maître des clés

    Bonjour

     

    En fait ce sont les logiciels de messagerie qui ne respectent pas les propriétés de visibilité des champs de formulaire et des calques, c’est pour ça qu’ils les affichent quand même.

    Donc a priori le moyen idéal serait de supprimer ces champs au lieu de les masquer.

    en réponse à : Champs caché mais imprimable #70799
    Merlin
    Maître des clés

    👍

    en réponse à : Items sur plusieurs lignes dans un menu déroulant #70795
    Merlin
    Maître des clés

    “Je ne savais pas (et je n’avais jamais essayé) !!!”

    Ce n’est pas documenté, ça fonctionne aussi pour les labels des boutons.

    J’ai appris ça par Thom Parker au détour d’un forum. 😉

    en réponse à : Items sur plusieurs lignes dans un menu déroulant #70790
    Merlin
    Maître des clés

    bebarth a raison, ce n’est pas possible en utilisant l’interface d’Acrobat.

    Par-contre c’est possible si on utilise JavaScript pour remplir les items du menu en y insérant des sauts de ligne “\n”.

    Par exemple en exécutant ce script dans la Console JavaScript (copier dans la Console, tout sélectionner, appuyer sur la touche Entrée*) :

     

    this.getField("theme1").setItems(["Patiente avec progression au niveau\nviscéral après 2 lignes de traitement", "Patiente en rechute après 2 lignes de traitement avec notamment\nprésence de métastases cérébrales peu symptomatiques", "Etc."]);

     

    Exemple ci-joint.

     

    *Attention, la touche Entrée (Enter) n’est pas la touche Retour (Return) !

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Effacer une page #70749
    Merlin
    Maître des clés

    Plus exactement : il faut que la page a supprimer ait été dupliquée/générée (spawned) à partir d’une page modèle (en général masquée).

     

    Ça fonctionne aussi avec les versions de Foxit Reader postérieures à septembre 2021.

    Après que je leur ai signalé ce “défaut de fonctionnalité” en juin 2021 : belle réactivité, en plus de prendre la peine de m’en informer par email. Tous les éditeurs ne peuvent pas en dire autant… 😉

    en réponse à : Effacer une page #70740
    Merlin
    Maître des clés

    Bonjour

     

    Attention, ça fonctionne avec Acrobat Pro et Acrobat Standard mais pas avec Acrobat Reader, ni avec Foxit Reader.

    en réponse à : Case à cocher obligatoire #70737
    Merlin
    Maître des clés

    Bonjour

     

    Place ce script en action de document “(Quand) Le document sera enregistré” :

    var nCompt = 0;
    for (var i=0; i<this.numFields; i++) { var oChamp = this.getField(this.getNthFieldName(i)); if (oChamp != null && oChamp.required == true && oChamp.value == oChamp.defaultValue) {nCompt++;} } if (nCompt > 0) {
    app.alert("Merci de cocher tous les champs obligatoires sinon votre demande ne sera pas prise en compte.");
    }

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Prénom composé #70710
    Merlin
    Maître des clés

    👍

    en réponse à : PDF interactif type bon de commande #70689
    Merlin
    Maître des clés

    😀

    en réponse à : PDF interactif type bon de commande #70685
    Merlin
    Maître des clés

    Clic-droit sur un champ : Propriétés.

    Ou double-clic.

    Ou quand le champ est sélectionné : touche Entrée (Enter)

     

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : PDF interactif type bon de commande #70678
    Merlin
    Maître des clés

    L’idéal serait que dans le document InDesign tu puisses convertir les intitulés en autant de champs de textes indépendants. (Il existe des scripts pour InDesign, certains gratuits, qui découpent en un clin d’œil un bloc de texte multiligne en autant de blocs qu’il y a de lignes.)

     

    Si les intitulés/champs de texte sont placés sur la page à peu près en face des cases à cocher, lors de la conversion en PDF InDesign devrait les numéroter de façon synchrone.

    Ainsi le script de calcul du champ texte pourrait aller chercher automatiquement l’intitulé correspondant à chaque case cochée, ce qui éviterait de devoir (re)remplir la valeur des cases manuellement.

    en réponse à : PDF interactif type bon de commande #70674
    Merlin
    Maître des clés

    2. Il faut ajouter ce script en script de calcul dans le champ de texte, exemple ci-joint (je n’ai renseigné que les 3 premières cases).

    InDesign a une curieuse et peu pratique façon de nommer les champs de formulaires mais heureusement les cases à cocher ont toutes un point commun : leur nom contient “Case à cocher”.

     

    // CONCATÉNER LES VALEURS (str) DES COCHES DONT LE NOM CONTIENT "Case à cocher"
    var strTexte = "";
    for (var i = 0; i < this.numFields; i++) {
    var oFld = this.getField(this.getNthFieldName(i));
    if ((oFld.type == "checkbox") && (/Case à cocher/.test(oFld.name)) && oFld.value != "Off") {
    strTexte = strTexte + oFld.valueAsString + "\n";
    }
    }
    event.target.value = strTexte;

    Attachments:
    You must be logged in to view attached files.
    en réponse à : PDF interactif type bon de commande #70671
    Merlin
    Maître des clés

    1. Il faut donner à chaque case à cocher l’intitulé correspondant, c’est faisable avec InDesign ou avec Acrobat Pro.

    Voir captures jointes.

    Attachments:
    You must be logged in to view attached files.
    en réponse à : PDF interactif type bon de commande #70666
    Merlin
    Maître des clés

    Bonjour

     

    A priori la réponse est oui.

    Mais pour dire comment il faudrait en savoir plus et/ou que tu partages ce document.

    en réponse à : QR Code dynamique dans PDF interactif #70665
    Merlin
    Maître des clés

    Ça n’est pas possible, tous les logiciels qui ouvrent des fichiers PDF ne se valent pas, loin de là.

    Je te conseille la lecture de ce tuto :

    Forcer l’utilisation d’un PDF avec Acrobat Reader

     

    Cependant les champs de type Codebarre ne s’affichent pas dans Acrobat Reader, c’est voulu, mais ils fonctionnent quand même.

    Par-contre ils s’affichent très bien dans Foxit Reader…

    en réponse à : QR Code dynamique dans PDF interactif #70660
    Merlin
    Maître des clés

    Bonjour

     

    Concernant le message d’alerte la réponse est simple : coche “Ne plus afficher” et tu ne le verras plus.

    Ce message ne concerne que les codes-barres et de toute façon est périmé, le “Barcode Paper Form Solution” dont il parle est un vieux truc qui date du XXe siècle, ce n’est plus d’actualité.

    Un peu comme les fax.

     

     

    Pour le reste, réponse en images :

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Insérer une vidéo dans un PDF avec Acrobat DC #70653
    Merlin
    Maître des clés

    Bonjour

     

    Je n’ai pas essayé depuis l’avant-dernière version (32 bits) mais ça fonctionnait.

    Par-contre ça fait maintenant plus de deux ans, depuis l’abandon du support de Flash Player, qu’on attend qu’Adobe implémente la barre de contrôle.

    Parce-que quand ça fonctionne l’utilisateur ne peut que déclencher la vidéo, ou le son, et ensuite attendre que ça s’arrête. Faute d’avoir les boutons Pause, Arrêt, Retour, Avance, etc.

     

    Donc mon conseil en attendant qu’Adobe se réveille c’est de placer la vidéo en pièce jointe dans le PDF, ce qui a pour effet de la lancer en externe via le lecteur vidéo par défaut de l’ordinateur, et donc avec une barre de contrôle.

    Et sans avoir le problème des formats non reconnus par Acrobat, puisque que le lecteur par défaut gère tous les formats standards actuels.

    😎

    en réponse à : Ajouter le symbole M² dans la colonne d’un formulaire #70638
    Merlin
    Maître des clés

    Pourquoi ne pas remplacer event.value+=” M”+String.fromCharCode(0x00B2);
    par : event.value+=” M²”

     

    Parce-que si tu le fait sur Mac ça ne s’affichera pas correctement sur PC, Android et iOS, et si tu le fait sur PC ça ne s’affichera pas correctement sur Mac, Android et iOS.

    Voir : https://www.abracadabrapdf.net/ressources-et-tutos/js-et-formulaires-ressources/pdf-javascript-et-unicode/

    en réponse à : Création script avec plusieurs calculs différents #70631
    Merlin
    Maître des clés

    Bonjour

     

    Quand j’ouvre ce document la console m’affiche :

    TypeError: f is null
    2:Document-Level:New Script 1

    Parce-que le champ “DATE” s’appelle en fait : “03-DATE”.

     

     

    Le script de date à l’ouverture n’est pas bon, celui-ci devrait mieux fonctionner :

    f = this.getField("03-DATE");
    if (f != null && f.value == f.defaultValue)
    {f.value = util.printd("dd/mm/yy", new Date())};

     

     

    Pour répondre à ta question :

    var oChampCoche = this.getField("Classe de précision");
    var oChampText = this.getField("texte1");
    if (oChampCoche.value == 0.4) {event.value = (oChampText.value / 2) + 1;}
    else if (oChampCoche.value == 1.5) {event.value = (oChampText.value / 2) + 2;}
    else {event.value = ""}

     

    Ci-joint.

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Ajouter le symbole M² dans la colonne d’un formulaire #70619
    Merlin
    Maître des clés

    👍

    en réponse à : Script pour compter les champs restants à remplir #70610
    Merlin
    Maître des clés

    OK, je n’ai rien dit.

    😇

    en réponse à : Griser un label #70598
    Merlin
    Maître des clés

    Supprime le script de validation (qui ne sert à rien) et supprime le script de calcul (qui converti en capitales et qui donc fausse tout le reste).

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Griser un label #70594
    Merlin
    Maître des clés

    PS : le texte qui apparait en gris clair doit être placé en texte par défaut.

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Griser un label #70593
    Merlin
    Maître des clés

    Bonjour

     

    // À PLACER EN ACTION "CHAMP ACTIVÉ" (ON FOCUS)
    if (event.target.value == event.target.defaultValue) {
    event.target.value = "";
    event.target.textColor = color.black;
    event.target.textSize = 36;
    event.target.alignment = "left"; // à gauche
    }

    // À PLACER EN ACTION CHAMP DÉSACTIVÉ (ON BLUR)
    if (event.target.value == "") {
    event.target.value = event.target.defaultValue;
    event.target.textColor = color.ltGray; // gris clair
    event.target.textSize = 12;
    event.target.alignment = "center"; // centrer
    }

    en réponse à : Script pour compter les champs restants à remplir #70590
    Merlin
    Maître des clés

    Une telle liste est un non-sens ergonomique, comment un utilisateur pourrait-il se souvenir de la liste des noms de champs affichés s’il y en a plus de 3 ?

    Voir ci-dessus mon message du 6 janvier.

    en réponse à : Créer un bouton sauvegarder #70548
    Merlin
    Maître des clés

    👍

     

    Galactica : Je crois que le champ image serait mieux s’il était carré, sans contour et avec un redimensionnement proportionnel de l’image.

    Carré parce-que ça permet des images dans les deux sens H et V, et aussi les images carrées.

    Redimensionnement proportionnel pour éviter de déformer les visages.

    Sans contour pour éviter l’effet moche entre le bord de l’image et le cadre si l’image n’est pas carrée.

     

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Valider une saisie par la touche entrée #70530
    Merlin
    Maître des clés

    bebarth wrote:
    Je ne comprends pas pourquoi « if (event.commitKey == 13… » ???

    Moi non plus.

     

    en réponse à : Valider une saisie par la touche entrée #70525
    Merlin
    Maître des clés

    👌

    en réponse à : Valider une saisie par la touche entrée #70519
    Merlin
    Maître des clés

    Bonjour

     

    Dans le champ “Result” j’ai déplacé le script en Validation et je l’ai un peu modifié.

    J’ai aussi ajouté une instruction dans le script du bouton “Générer”.

     

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : affichage ligne suivante. #70515
    Merlin
    Maître des clés

    Moi je l’ai vu, c’est déjà ça 😉

    Merci.

    en réponse à : affichage ligne suivante. #70513
    Merlin
    Maître des clés

    Merci, mais n’hésites pas : moins on a l’habitude de publier et plus ça parait sincère quand on le fait.

    😎

    en réponse à : affichage ligne suivante. #70511
    Merlin
    Maître des clés

    On ne peux pas te donner tort.

    😉

    en réponse à : affichage ligne suivante. #70506
    Merlin
    Maître des clés

    Merci pour les compliments !

    Si tu pouvais publier les mêmes sur Twitter, LinkedIn, Facebook, etc. ce serait extra.

    😎

    en réponse à : affichage ligne suivante. #70497
    Merlin
    Maître des clés
    en réponse à : affichage ligne suivante. #70474
    Merlin
    Maître des clés

    appelle la en « script de touche personnalisé » dans chacun des champs

     

    Pour le faire en un clin d’œil copie-colle ce script dans la Console, sélectionne tout et appuie sur la touche Entrée (ne pas confondre avec Retour) :

     

    for (var i = 0; i < this.numFields; i++) {

    var oFld = this.getField(this.getNthFieldName(i));
    if ((oFld.type == "text") && (/ac/.test(oFld.name))) {
    oFld.setAction("Keystroke", "formatChiffre()");
    }

    }

    en réponse à : affichage ligne suivante. #70473
    Merlin
    Maître des clés

    je n’ai pas pu formater les champs en nombre car cela crée une erreur (je pense qu’un champ nombre ne peut pas contenir la valeur vide « ».

     

    C’est exactement ça.

    Ajoute cette fonction et appelle la en “script de touche personnalisé” dans chacun des champs.

    Elle n’autorise que la saisie de chiffres mais elle n’empêche pas “rien”.

     

    function formatChiffre() {
    var regxp=/^[0-9]$/;
    if (event.willCommit==false) {
    if (event.change.length>0 && regxp.test(event.change)==false) {
    app.beep();
    event.rc=false
    }
    }
    }

    en réponse à : affichage ligne suivante. #70472
    Merlin
    Maître des clés
    en réponse à : affichage ligne suivante. #70470
    Merlin
    Maître des clés

    Avec le script de bebarth ça fonctionne bien.

    Dans le ci-joint j’ai mis la fonction en action “onBlur”, j’ai supprimé les calculs et j’ai optimisé le script de reset.

     

    function affLigne() {
    for (var i=0; i<=19; i++) {
    eval("var ac"+i+" = this.getField(\"ac."+i+"\").value");
    }

    if (ac0 != "" | ac1 != "" | ac2 != "" | ac3 != "" ) {
    for (var k = 4 ; k<8 ; k++) {
    this.getField("ac."+k).display = display.visible;}}

    if (ac4 != "" | ac5 != "" | ac6 != "" | ac7 != "" ) {
    for (var l = 8 ; l<12 ; l++) {
    this.getField("ac."+l).display = display.visible;}}

    if (ac8 != "" | ac9 != "" | ac10 != "" | ac11 != "" ) {
    for (var m = 12 ; m<16 ; m++) {
    this.getField("ac."+m).display = display.visible;}}

    if (ac12 != "" | ac13 != "" | ac14 != "" | ac15 != "" ) {
    for (var n = 16 ; n<20 ; n++) {
    this.getField("ac."+n).display = display.visible;}}

    }

    Attachments:
    You must be logged in to view attached files.
    en réponse à : affichage ligne suivante. #70460
    Merlin
    Maître des clés

    L’ordre d’exécution des événements dans les champs de formulaire PDF

     

    https://www.abracadabrapdf.net/ressources-et-tutos/js-et-formulaires-ressources/lordre-dexecution-des-evenements-dans-les-champs-de-formulaire-pdf/

    en réponse à : affichage ligne suivante. #70457
    Merlin
    Maître des clés

    Bonjour

     

    1 Il faudrait placer le script en script de validation, pas en script de calcul.

    De plus tous les scripts et actions de calcul de tous les champs d’un document se déclenchent tous à chaque fois qu’un champ du document, y compris les boutons, passe par l’état “champ désactivé”. Ce qui peut vite devenir pénalisant en terme de performances et d’expérience utilisateur.

    Les scripts de calculs sont à éviter autant que possible.

     

    2 Pour moi une variable qui n’est utilisée qu’une seule fois et qui ne change pas de valeur ne sert à rien d’autre qu’à encombrer la mémoire, en tel cas je mettrais les noms de champs directement dans les conditions if.

     

    3 C’est possible mais je préfère toujours faire comme toi car je trouve que c’est trop prise de tête.

    Par-contre dans ce cas précis la double numérotation des suffixes serait avec toi puisqu’elle rendrait les boucles inutiles. Si les champs étaient nommés comme les champs “ab” de la capture ci-jointe, pour afficher la deuxième rangée tu pourrais utiliser :

    this.getField("ab.1").display = display.visible;

    Qui affiche tous les champs enfants du champ virtuel “ab.1”, peut importe leur nombre.

     

    • Cette réponse a été modifiée le il y a 2 années et 3 mois par Merlin.
    Attachments:
    You must be logged in to view attached files.
    Merlin
    Maître des clés

    Oui ne regrette pas trop, pas de JavaScript et une curieuse façon de mémoriser les paramètres.

    C’est une implémentation un peu bancale, mais c’est hélas d’origine.

    en réponse à : Affichage du haut d’une page #70433
    Merlin
    Maître des clés

    Bonjour.

     

    Quand on envoie vers une page via JavaScript le haut de la page ciblée est toujours visible.

     

    // NAVIGATION DANS LES PAGES D'UN DOCUMENT PDF
    // EN JAVASCRIPT LES NUMÉROTATIONS COMMENCENT À ZÉRO, LE NUMÉRO DE LA PAGE CIBLE EST DONC TOUJOURS ÉGAL À N-1

    // aller à la vue précédente*
    app.execMenuItem("GoBack");

    // aller à la page précédente
    this.pageNum--;

    // aller à la page suivante
    this.pageNum++;

    // aller à la dernière page
    this.pageNum = this.numPages - 1;

    // aller à la première page
    this.pageNum = 0;

    // aller à la page 4
    this.pageNum = 3;

    en réponse à : Changer la couleur des textes lors de l’impression #70432
    Merlin
    Maître des clés

    Bonjour Jean-Claude

     

    // CHANGER LA COULEUR DES TEXTES (PAR DÉFAUT) LORS DE L'IMPRESSION

    // ACTION DOCUMENT WILL PRINT
    var bSale = this.dirty;
    for (var i=0; i<this.numFields; i++) {
    var oFld = this.getField(this.getNthFieldName(i));
    if (oFld.type == "text" && oFld.value == oFld.defaulValue) {
    oFld.value = "";
    }
    }
    this.dirty = bSale;

    // ACTION DOCUMENT DID PRINT
    var bSale = this.dirty;
    for (var i=0; i<this.numFields; i++) {
    var oFld = this.getField(this.getNthFieldName(i));
    if (oFld.type == "text" && oFld.value == "") {
    oFld.value = oFld.defaulValue;
    }
    }
    this.dirty = bSale;

    Merlin
    Maître des clés

    Attention : pour cette dernière étape il faut utiliser l’outil Main (mode saisie).

    Attention aussi : il faut que les champs restent remplis (même avec une espace) car sinon ces propriétés ne sont pas enregistrées.

     

    Attachments:
    You must be logged in to view attached files.
    Merlin
    Maître des clés

    Bonjour

     

    Réponse en images.

     

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Codes postaux en liaison sur deux casses #70398
    Merlin
    Maître des clés

    Je les ai toutes dans l’ordre chronologique, c’est peut être un problème d’horloge ?

    en réponse à : Codes postaux en liaison sur deux casses #70391
    Merlin
    Maître des clés

    PS : Bizarre, ma réponse est bien la dernière mais n’est pas située après l’avant-dernière de Merlin !!!

    Reload !   🔄

    😉

Affichage de 99 réponses de 397 à 495 (sur un total de 10,107)