preprint student id in omr readable format (Feature #32)
Description
If you print a personal exam per student, then why not also print name and 'scannable' student id on the answer sheets.
You can use the same csv file format to import the data as which you use in the scoring.
The id could be formatted like tie exam id, in binary format.
We for instance use decimal 7 digits which will fit into a 24 bit string (2**24 = 16.777.216).
That way a student id will only take one line in stead of ten.
If student id and name are also printed in human readable form, you always have a fall back.
By the way, I am interested to help. Have skills in latex, perl, java and teach software engineering at Fontys Hogescholen, a polytechnic in Venlo, The Netherlands.
History
Updated by Alexis Bienvenüe over 12 years ago
In my use of AMC, the students can seat anywhere for the exams. So it is quite difficult (or time consuming) to give them the right answer sheet if the answer sheets have the students names on them. That's why I use association from students given data (either from AMCcode
or from written names in the \namefield
).
- print the students names on each sheet. Perhaps one can use something like the
csvsimple
LaTeX package to do the job? Perhaps add to theautomultiplechoice
LaTeX package some commands to help the user with that task? - make automatic association from the sheet IDs, and not from some other data written by the students. I think this should require some little work on AMC code.
Updated by Alexis Bienvenüe over 12 years ago
- Target version set to 1.2.0
Updated by Alexis Bienvenüe over 12 years ago
See attached files as an example with AMC from revision r1098.
The LaTeX package csvsimple
is used to make the sheets (\csvreader
calls for each student the command \subject
that produces one copy).
The students list is UTF8 encoded, so \usepackage[utf8]{inputenc}
is called.
After data capture and marking, use automatic association with "Pre-association" setting for "Code name for automatic association".
- File ensemble.tex added
- File students.csv added
Updated by Pieter Van den Hombergh over 12 years ago
Alexis Bienvenüe wrote:
See attached files as an example with AMC from revision r1098.
The LaTeX packagecsvsimple
is used to make the sheets (\csvreader
calls for each student the command\subject
that produces one copy).
The students list is UTF8 encoded, so\usepackage[utf8]{inputenc}
is called.
After data capture and marking, use automatic association with "Pre-association" setting for "Code name for automatic association".
It compiles correctly.
I even substituted the student ids with the kind we use (7 digits as in 2123456).
I did a full run on your example exam and it works as advertised.
One more wish would be to add the student number (the id in your files) onto the question and answer sheet.
On the exam sheet because then we can check that no exam leaves the room unnoticed , on the exam as extra check.
Of course this can all be easily done once you (the exam author and form designer) knows what \AMC command stores this information from the csv file.
Anyway, a big thanks again.
Updated by Pieter Van den Hombergh over 12 years ago
Pieter Van den Hombergh wrote:
Alexis Bienvenüe wrote:
See attached files as an example with AMC from revision r1098.
The LaTeX packagecsvsimple
is used to make the sheets (\csvreader
calls for each student the command\subject
that produces one copy).
The students list is UTF8 encoded, so\usepackage[utf8]{inputenc}
is called.
After data capture and marking, use automatic association with "Pre-association" setting for "Code name for automatic association".It compiles correctly.
I even substituted the student ids with the kind we use (7 digits as in 2123456).
I did a full run on your example exam and it works as advertised.
One more wish would be to add the student number (the id in your files) onto the question and answer sheet.
On the exam sheet because then we can check that no exam leaves the room unnoticed , on the exam as extra check.
Of course this can all be easily done once you (the exam author and form designer) knows what \AMC command stores this information from the csv file.Anyway, a big thanks again.
Adding id and name to form and exams is easy.
Add the \id and \cfoot[\surname,\name{} (\id)]{\surname,\name{} (\id)} to the \subject macro and it will produce just the right thing.
Updated by Pieter Van den Hombergh over 12 years ago
Pieter Van den Hombergh wrote:
Pieter Van den Hombergh wrote:
Alexis Bienvenüe wrote:
See attached files as an example with AMC from revision r1098.
The LaTeX packagecsvsimple
is used to make the sheets (\csvreader
calls for each student the command\subject
that produces one copy).
The students list is UTF8 encoded, so\usepackage[utf8]{inputenc}
is called.
After data capture and marking, use automatic association with "Pre-association" setting for "Code name for automatic association".It compiles correctly.
I even substituted the student ids with the kind we use (7 digits as in 2123456).
I did a full run on your example exam and it works as advertised.
One more wish would be to add the student number (the id in your files) onto the question and answer sheet.
On the exam sheet because then we can check that no exam leaves the room unnoticed , on the exam as extra check.
Of course this can all be easily done once you (the exam author and form designer) knows what \AMC command stores this information from the csv file.Anyway, a big thanks again.
Adding id and name to form and exams is easy.
Add the \id and \cfoot[\surname,\name{} (\id)]{\surname,\name{} (\id)} to the \subject macro and it will produce just the right thing.
I use exams in two languages (Dutch and German) and read the students language from a csv file. Once I know how to integrate that, I'll let you know.
Updated by Alexis Bienvenüe over 12 years ago
Add the
\id
and\cfoot[\surname,\name{} (\id)]{\surname,\name{} (\id)}
to the\subject
macro and it will produce just the right thing.
Yes, you got it. Thanks to the \csvreader
command, the commands like \surname
(the names are the CSV file headers) are defined with their contents taken from the CSV file columns.
I use exams in two languages (Dutch and German) and read the students language from a csv file.
Maybe you can use something like
\csvreader[head to column names]{students.csv}{}{\csname subject\lang\endcsname}
and two \subjectDE
and \subjectNL
commands (if the content of the lang
column from the CSV file is either DE
or NL
).
Updated by Pieter Van den Hombergh over 12 years ago
Alexis Bienvenüe wrote:
Add the
\id
and\cfoot[\surname,\name{} (\id)]{\surname,\name{} (\id)}
to the\subject
macro and it will produce just the right thing.Yes, you got it. Thanks to the
\csvreader
command, the commands like\surname
(the names are the CSV file headers) are defined with their contents taken from the CSV file columns.I use exams in two languages (Dutch and German) and read the students language from a csv file.
Maybe you can use something like
[...]and two
\subjectDE
and\subjectNL
commands (if the content of thelang
column from the CSV file is eitherDE
orNL
).
Works like a charm.
In one of my exams I use mc and open questions with a separate answer form, 60 questions in total.
Using the hand-encoded way with \AMCcode took a lot of space on the page and I definitively wanted only one page per student to scan.
This is now solved, since the new association take almost no space on the page (depending of course on the character size ;-)).
The whole logic of my exam production now three small files.
The pdf version of the answer sheet is also attached.
I try to keep things 'dry' as in minimal work to produce a next exam.
- File output.pdf added
- File processExams.tex added
- File setlang.sty added
- File shortopen.tex added
Updated by Alexis Bienvenüe almost 12 years ago
- % Done changed from 0 to 100
- Status changed from New to Closed