Building PDFs

Finally we can build our PDF files. Change into our project directory if you’re not there already

$ cd midterm

Producing PDFs to print

Plom now has everything that it needs to build PDFs for you to print. Run plom-build make. It may prompt you for your server manager password.

$ plom-build make
Reading specification
Creating plom database
Test 1 created
        ID-group created
        DoNotMark-group created
        Question 1 created
        Question 2 created
        Question 3 created
Test 2 created
        ID-group created
        DoNotMark-group created
        Question 1 created
        Question 2 created
        Question 3 created


Database created successfully
Making directory for papers.
Building named papers
100%|████████████████████████████████████████████████████████| 40/40 [00:04<00:00,  8.22it/s]
Checking papers produced and updating databases

The system constructs your PDFs in two steps. First it builds the database and populates it with information about each of the papers — such as the student name and ID (if you printed some named tests), and which question-versions have been chosen. Once that is done, the PDFs are constructed (in parallel) and any updates to the database are made. Your papers are now ready to print and you can find them in the papersToPrint subdirectory:

$ ls papersToPrint/
exam_0001.pdf  exam_0008.pdf  exam_0015.pdf  exam_0022.pdf  exam_0029.pdf  exam_0036.pdf
exam_0002.pdf  exam_0009.pdf  exam_0016.pdf  exam_0023.pdf  exam_0030.pdf  exam_0037.pdf
exam_0003.pdf  exam_0010.pdf  exam_0017.pdf  exam_0024.pdf  exam_0031.pdf  exam_0038.pdf
exam_0004.pdf  exam_0011.pdf  exam_0018.pdf  exam_0025.pdf  exam_0032.pdf  exam_0039.pdf
exam_0005.pdf  exam_0012.pdf  exam_0019.pdf  exam_0026.pdf  exam_0033.pdf  exam_0040.pdf
exam_0006.pdf  exam_0013.pdf  exam_0020.pdf  exam_0027.pdf  exam_0034.pdf
exam_0007.pdf  exam_0014.pdf  exam_0021.pdf  exam_0028.pdf  exam_0035.pdf

Here is the resulting exam_0001.pdf (which is named) and exam_0027.pdf (which is unnamed):

We strongly recommend that you check some of these files before you print. Each page should have 3 qr-codes and 1 triangle stamped in the corners. Additionally the centre-top of each page has the test- and page-number stamped on it. Please also double-check the specification. If something has gone wrong, before you print is the best time to catch it. After printing, it is much harder to fix things and some dangerous manual hackery may be required.

We are now ready to start processing scans and get on with marking.

Something went wrong

Here are some common errors that are easy to fix before printing.

  • “I found an error in the specification”
  • “I used the wrong classlist”, or “My classlist is out of order”
  • “I didn’t generate enough papers”
  • “I found typos in my source tests”
  • “My source tests are different lengths”
  • “My source tests have different numbers of questions”
  • “The qr-codes in the final PDFs overlap my text.”

For now, the best advice is probably that you should just start again from scratch.