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's gravatar image

joseph-tux
42722450
Taux d'acceptation : 4%

Modifiée 16 Nov '21, 16:02


\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}

alt text

Lien permanent

Publiée 16 Nov '21, 16:30

samcarter's gravatar image

samcarter
8.2k2817
Taux d'acceptation : 57%

Modifiée 16 Nov '21, 16:40

@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's gravatar image

@joseph-tux Oui, c'est JavaScript

(16 Nov '21, 18:11) samcarter samcarter's gravatar image

@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 joseph-tux's gravatar image

(...)*3-1 = (...)*(cochées - pas cochées)+pas cochées = (...)*(2 - (-1) ) + (-1) = (...)*3-1

(16 Nov '21, 18:44) samcarter samcarter's gravatar image

@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 joseph-tux's gravatar image
2

@joseph-tux Je crois malheureusement qu'aucun afficheur PDF sous Linux ne gère le JavaScript.

(16 Nov '21, 21:04) denis ♦♦ denis's gravatar image

@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 samcarter's gravatar image

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's gravatar image

@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 ♦♦ denis's gravatar image
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 Ulrike%20Fischer's gravatar image
Affichage de 5 parmi 10 Afficher 5 commentaire(s) en plus
Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.