Je cherche à créer un formulaire en pure LaTeX , avec hyperref et son environnement Form. Il s'agit de cocher des cases en réponse à des questions, puis d'additionner les scores (entiers négatifs par défaut, positif si cochée) Ma question concerne donc la syntaxe à utiliser pour réaliser cette addition, comment transmettre chaque valeur à additionner. Dans l'ECM suivant, il s'agit donc de savoir par quoi remplacer (cle*) dans la fonction \ifthenelse. \documentclass[french,a4paper,]{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{ifthen} \usepackage{babel} \usepackage{hyperref} \newcounter{cote} \begin{document} \begin{Form} % 1 non = -1 , oui = +2 \CheckBox[accesskey=cleune]{Cette question vous plait-elle?} \ifthenelse{boolean{(cleune)}}{\addtocounter{cote}{-1}}{\addtocounter{cote}{2}} % 2 non = -2 , oui = +3 \CheckBox[accesskey=cledeux]{Et celle-ci?} \ifthenelse{boolean{(cledeux)}}{\addtocounter{cote}{-2}}{\addtocounter{cote}{3}} Le score total est: \thecote \end{Form} \end{document}
Cette question est marquée comme « Wiki ».
Posée 16 Nov '21, 15:45 joseph-tux |
\documentclass[french,a4paper,]{article} \usepackage{hyperref} \begin{document} \begin{Form} 1 non = -1 , oui = +2 \CheckBox[name=cleune,default=-1,value=2]{Cette question vous plait-elle?} 2 non = -2 , oui = +3 \CheckBox[name=cledeux]{Et celle-ci?}{} \TextField[readonly=true,name=sum,default=-3,calculate = { event.value= (this.getField("cleune").value=="Yes")*3-1 + (this.getField("cledeux").value=="Yes")*5-2 ; }]{} \end{Form} \end{document} Publiée 16 Nov '21, 16:30 samcarter @samcarter merci. cependant je ne comprends pas la partie «calculate». Sans doute est-ce du javascript? que je ne connais pas.
(16 Nov '21, 17:49)
joseph-tux
@joseph-tux Oui, c'est JavaScript
(16 Nov '21, 18:11)
samcarter
@samcarter et que signifie les chiffres? où trouve-t-on les valeurs cochées/pas cochées (affectées dans default (non coché) et dans value (coché) que je ne reconnais/comprends pas dans le champs « calculate » de votre ECM ? PS j'utilise evince ou atril, qui fonctionne avec un vieux formulaire (que du texte, pas de CheckBox) traité par un script bash si je me souviens bien.
(16 Nov '21, 18:40)
joseph-tux
(16 Nov '21, 18:44)
samcarter
@samcarter Encore merci mais, est-ce un problème avec atril ou evince, quel que soit mon action (cocher ou non l'une ou l'autre), le résultat reste identique (et donc faux). Acroread n'étant plus accessible pour linux, à ma connaissance, cette question est déterminante pour mon( petit) projet.
(16 Nov '21, 19:59)
joseph-tux
2
@joseph-tux Je crois malheureusement qu'aucun afficheur PDF sous Linux ne gère le JavaScript.
(16 Nov '21, 21:04)
denis ♦♦
@joseph-tux Vous avez besoin de JavaScript. Vous ne savez pas quels sont les chiffres quand vous exécutez latex.
(16 Nov '21, 21:18)
samcarter
Merci samcarter et denis. je suppose qu'il n'y a pas d'autre façon avec LaTeX pour utiliser ces résultats (ces variables)
(19 Nov '21, 19:52)
joseph-tux
@joseph-tux Je n'ai pas l'impression dans l'immédiat. Mais il y a de l'espoir compte-tenu du gros travail actuel sur la nouvelle gestion du format PDF par LaTeX (cf. le CR de l'exposé d'Ulrike Fischer dans la Lettre GUTenberg 44).
(19 Nov '21, 21:35)
denis ♦♦
2
@denis LaTeX ne peut pas changer ce que pdf offre, et en ce moment il faut du javascript et un afficheur qui le peut pour faire des calculations dans pdf.
(22 Nov '21, 15:53)
Ulrike Fischer
Affichage de 5 parmi 10
Afficher 5 commentaire(s) en plus
|