Advertisement
cpierquet

eformsaleapythontex

Aug 10th, 2020 (edited)
335
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Latex 3.41 KB | None | 0 0
  1. %entete classique en fonction des besoins
  2. \usepackage{eforms} %à mettre après hyperref
  3. \usepackage{pythontex}
  4.  
  5. %--code pour les champs et boutons à cocher eforms--
  6. %les boutons à cocher
  7. \newcommand\choixqcmu[2]{\radioButton[\V{E}\DV{E}]{#1}{1em}{1em}{#2}}
  8. %le bouton pour dire qu'on ne souhaite pas répondre !
  9. \newcommand\choixqcmunochoice[1]{\radioButton[\V{E}\DV{E}]{#1}{1em}{1em}{E}}
  10.  
  11. %--code python pour "mélanger" les réponses, et déclaration des réponses--
  12. %les réponses sont des raw strings en python, pour le problème des \ notamment
  13.  
  14. \begin{pycode}
  15. def qcmalea(a,b,c,d): #pour 4 réponses
  16.     from random import shuffle
  17.     reponses = [a,b,c,d]
  18.     shuffle(reponses)
  19.     return reponses
  20.  
  21. def qcmalea3(a,b,c): #pour 3 réponses
  22.     from random import shuffle
  23.     reponses = [a,b,c]
  24.     shuffle(reponses)
  25.     return reponses
  26.  
  27. #Question1
  28. Q1A = r"\choixqcmu{Q1}{A}~~blablaréponseA"
  29. Q1B = r"\choixqcmu{Q1}{B}~~blablaréponseB"
  30. Q1C = r"\choixqcmu{Q1}{C}~~blablaréponseC"
  31. Q1D = r"\choixqcmu{Q1}{D}~~blablaréponseD"
  32. reponsesQ1 = qcmalea(Q1A,Q1B,Q1C,Q1D)
  33.  
  34. #Question2
  35. Q2A = r"\choixqcmu{Q2}{A}~~blablaréponseA"
  36. Q2B = r"\choixqcmu{Q2}{B}~~blablaréponseB"
  37. Q2C = r"\choixqcmu{Q2}{C}~~blablaréponseC"
  38. Q2D = r"\choixqcmu{Q2}{D}~~blablaréponseD"
  39. reponsesQ2 = qcmalea(Q2A,Q2B,Q2C,Q2D)
  40.  
  41. #Question3
  42. Q3A = r"\choixqcmu{Q3}{A}~~blablaréponseA"
  43. Q3B = r"\choixqcmu{Q3}{B}~~blablaréponseB"
  44. Q3C = r"\choixqcmu{Q3}{C}~~blablaréponseC"
  45. Q3D = r"\choixqcmu{Q3}{D}~~blablaréponseD"
  46. reponsesQ3 = qcmalea(Q3A,Q3B,Q3C,Q3D)
  47.  
  48. #Question4 etc...
  49. \end{pycode}
  50.  
  51. \begin{document}
  52.  
  53. %titre/etc...
  54.  
  55. %champ nomprenom qui permettra de "préremplir le nom prénom de l'élève" (personnalisable bien évidemment)
  56. \textbf{\Large NOM Prénom : }~{\textField[\V{Prénom NOM}\BC{0 0 0}\textSize{12}\textFont{Arial}]{nomprenom}{12cm}{20pt}}
  57.  
  58. %--exemple de question avec les réponses--
  59. %pour des raisons "pratiques", une 5ème réponse, appelée E a été rajoutée (traitement plus simple des résultats...)
  60.  
  61. \begin{enumerate}
  62.     \item blablaquestion1
  63.     \begin{center}
  64.         \renewcommand{\arraystretch}{1.75}
  65.         \begin{tabularx}{\linewidth}{|X|X|}
  66.             \hline
  67.             \py{reponsesQ1[0]} & \py{reponsesQ1[1]} \\ \hline
  68.             \py{reponsesQ1[2]} & \py{reponsesQ1[3]} \\ \hline
  69.             \multicolumn{2}{c}{\choixqcmunochoice{Q1}~~Je ne préfère pas répondre\dots} \\
  70.         \end{tabularx}
  71.     \end{center}
  72.     \item blablaquestion2
  73.    
  74.     \begin{center}
  75.         \renewcommand{\arraystretch}{1.75}
  76.         \begin{tabularx}{\linewidth}{|X|X|}
  77.             \hline
  78.             \py{reponsesQ2[0]} & \py{reponsesQ2[1]} \\ \hline
  79.             \py{reponsesQ2[2]} & \py{reponsesQ2[3]} \\ \hline
  80.             \multicolumn{2}{c}{\choixqcmunochoice{Q2}~~Je ne préfère pas répondre\dots} \\
  81.         \end{tabularx}
  82.     \end{center}
  83.     \item blablaquestion3
  84.    
  85.     \begin{center}
  86.         \renewcommand{\arraystretch}{1.75}
  87.         \begin{tabularx}{\linewidth}{|X|X|}
  88.             \hline
  89.             \py{reponsesQ3[0]} & \py{reponsesQ3[1]} \\ \hline
  90.             \py{reponsesQ3[2]} & \py{reponsesQ3[3]} \\ \hline
  91.             \multicolumn{2}{c}{\choixqcmunochoice{Q3}~~Je ne préfère pas répondre\dots} \\
  92.         \end{tabularx}
  93.     \end{center}
  94.     \item blablaquestion4
  95.    
  96.     \begin{center}
  97.         \renewcommand{\arraystretch}{1.75}
  98.         \begin{tabularx}{\linewidth}{|X|X|}
  99.             \hline
  100.             \py{reponsesQ4[0]} & \py{reponsesQ4[1]} \\ \hline
  101.             \py{reponsesQ4[2]} & \py{reponsesQ4[3]} \\ \hline
  102.             \multicolumn{2}{c}{\choixqcmunochoice{Q4}~~Je ne préfère pas répondre\dots} \\
  103.         \end{tabularx}
  104.     \end{center}
  105. \end{enumerate}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement