Commit f0014a38 authored by Deb's avatar Deb
Browse files

fix README

fix pypdf2 in README

README fix

fix README
parent 70fd1ca6
......@@ -5,8 +5,8 @@ The tool is designed to handle zipped submissions downloadable from Moodle as we
## Contents
* `handlemoodlesubmissions.py` (*for downloadable PDFs*) unzips files from submission zip file downloadable from Moodle(in case there are no scans) and renames it accordingly in the format *<Matriculation number>_<Lastname/first letter of Lastname>*
* `renamescans.py` (*for scanned PDFs*) Rename scanned PDFs, assuming scan order equal to alphabetical order of students in Moodle grading sheet, such that the file name is in the format in the format *<Matriculation number>_<first letter of Lastname>*. This only works if exams were scanned in alphabetical order. Optionally, each scanned PDF is searched for barcodes/QRs containing the matriculation number to double check.
* `handlemoodlesubmissions.py` (*for downloadable PDFs*) unzips files from submission zip file downloadable from Moodle(in case there are no scans) and renames it accordingly in the format `<Matriculation number>_<Lastname/first letter of Lastname>`
* `renamescans.py` (*for scanned PDFs*) Rename scanned PDFs, assuming scan order equal to alphabetical order of students in Moodle grading sheet, such that the file name is in the format in the format `<Matriculation number>_<first letter of Lastname>`. This only works if exams were scanned in alphabetical order. Optionally, each scanned PDF is searched for barcodes/QRs containing the matriculation number to double check.
* `supplements.py` renames and create copies of sample solutions(if any)/additional exam materials for every student.
* `watermark.py` watermarks each page of PDFs containing exam scans with matriculation number of the respective student
* `encrypt.py` encrypts PDFs either with a common password(passed as an argument) or a randomly generated password(when there is no argument)
......@@ -29,7 +29,7 @@ For more info please refer to the [Documentation](https://rwthmoodle.pages.rwth-
* **Create and setup Moodle**
* In your Moodle course room, create an `assign` module following this [guideline](https://help.itc.rwth-aachen.de/service/8d9eb2f36eea4fcaa9abd0e1ca008b22/article/0cfca4212fef4712ad2d432ac83eaf3e)
* Download the grading table `Bewertungen.csv` from Moodle via: `Alle Angaben anzeigen` &#8594; `Bewertungsvorgang` &#8594; `Bewertungstabelle herunterladen`
* Download the grading table `Grades.csv` from Moodle via: `View all submissions` &#8594; `Grading action` &#8594; `Download grading worksheet`
* **Create PDFs corresponding to each exam**
* Scan the exams and save the scans as PDFs (each page should be A4). For most copy machines, you can save an A3 scan (double page of an exam) as two A4 pages.
......@@ -40,7 +40,7 @@ For more info please refer to the [Documentation](https://rwthmoodle.pages.rwth-
* **OR: Download submission zip file**
* Download the submission zip file from (Assignment Main Page->View all submissions->Download all submissions)
* **Optional: Create ample solutions/additional exam materials (Refer [here](https://git.rwth-aachen.de/rwthmoodle/exam-scan/-/issues/3))**
* **Optional: Create sample solutions/additional exam materials (Refer [here](https://git.rwth-aachen.de/rwthmoodle/exam-scan/-/issues/3))**
* Scan the sample solutions/additional exam materials and save the scans as PDFs (each page should be A4). For most copy machines, you can save an A3 scan (double page of an exam) as two A4 pages.
* Place all PDFs in a folder, e.g. `supplements`.
......@@ -54,7 +54,6 @@ For more info please refer to the [Documentation](https://rwthmoodle.pages.rwth-
* Additional Python modules:
* wand (version 0.6.5)
* pillow (version: 8.1.0)
* PyPDF2 (version 1.26.0)
* pwgen (version: 0.8.2.post0)
* pikepdf (version 2.5.0)
* zip (version 0.02)
......@@ -72,23 +71,6 @@ For more info please refer to the [Documentation](https://rwthmoodle.pages.rwth-
pip install -r requirements.txt
python ./watermark.sh --help
```
The current version of code was tested on Windows10, Ubuntu 20.04.1 LTS and macOS 10.14 Mojave to ensure platform independence.The code has the following software dependencies which needs to installed before the programs can be run successfully. Specific version numbers along with categorisation based on script requirement is available [here](Dependancies.md):
* Imagemagick
* Ghostscript
* Python 3.8/3.9
* PIP
* Additional Python modules:
* wand
* pillow
* pwgen
* pikepdf
Instructions to install software dependencies based on your operating system:
* Windows 10 : [Installation of Software Dependencies](swdependencies_win.md)
* MacOS : [Installation of Software Dependencies](swdependencies_mac.md)
* Linux : [Installation of Software Dependencies](swdependencies_linux.md)
### Docker
If you are an experienced user familiar with Docker, you can use the provided `Dockerfile` to easily run the scripts.
......@@ -138,7 +120,7 @@ For more info on the scripts and additional arguments refer to the [Documentatio
#### Watermark the submissions
Assuming that the folder `./tests/assets/pdfs` holds the scans of the exams and filenames follow the format *<Matriculation number>_<Lastname/first letter of Lastname>*, `./tests/assets/pdfs_watermarked` is the output folder where all the watermarked PDFs will be placed and cores=2 indicate the number of cores for parallel processing
Assuming that the folder `./tests/assets/pdfs` holds the scans of the exams and filenames follow the format `<Matriculation number>_<Lastname/first letter of Lastname>`, `./tests/assets/pdfs_watermarked` is the output folder where all the watermarked PDFs will be placed and cores=2 indicate the number of cores for parallel processing
```bash
python watermark.py ./tests/assets/pdfs ./tests/assets/pdfs_watermarked --cores 2 --dpi 150 --quality 75
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment