diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/uantwerpendocs/uantwerpendocs.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/uantwerpendocs/uantwerpendocs.dtx | 1206 |
1 files changed, 1095 insertions, 111 deletions
diff --git a/Master/texmf-dist/source/latex/uantwerpendocs/uantwerpendocs.dtx b/Master/texmf-dist/source/latex/uantwerpendocs/uantwerpendocs.dtx index 09b2ab6b71b..e5f0b4ff31f 100644 --- a/Master/texmf-dist/source/latex/uantwerpendocs/uantwerpendocs.dtx +++ b/Master/texmf-dist/source/latex/uantwerpendocs/uantwerpendocs.dtx @@ -1,6 +1,6 @@ % \iffalse meta-comment % -% Copyright (C) 2013-2016 by Walter Daems <walter.daems@uantwerpen.be> +% Copyright (C) 2013-2018 by Walter Daems <walter.daems@uantwerpen.be> % % This work may be distributed and/or modified under the conditions of % the LaTeX Project Public License, either version 1.3 of this license @@ -24,19 +24,21 @@ %<*driver> \ProvidesFile{uantwerpendocs.dtx} %</driver> -%<ct|mt>\NeedsTeXFormat{LaTeX2e}[1999/12/01] +%<ct|mt|le|ex>\NeedsTeXFormat{LaTeX2e}[1999/12/01] %<ct>\ProvidesClass{uantwerpencoursetext} %<mt>\ProvidesClass{uantwerpenmasterthesis} %<le>\ProvidesClass{uantwerpenletter} -%<ct|mt> [2016/05/01 v1.7 .dtx skeleton file] +%<ex>\ProvidesClass{uantwerpenexam} +%<ct|mt|le|ex> [2018/03/02 v1.9 .dtx skeleton file] % -\def\fileversion{1.8} -\def\filedate{2017/01/08} +\def\fileversion{1.9} +\def\filedate{2018/03/02} %<*driver> \documentclass{ltxdoc} \usepackage{makeidx} \usepackage{alltt} \usepackage{booktabs} +\usepackage{metalogo} \IfFileExists{tocbibind.sty}{\usepackage{tocbibind}}{} \IfFileExists{hyperref.sty}{\usepackage[bookmarksopen]{hyperref}}{} \EnableCrossrefs @@ -81,8 +83,11 @@ % Applied Economics} % \changes{v1.7}{2016/05/01}{\@ Added babel translations of elements % of master's thesis title page} -% \changes{v1.8}{2018/01/08}{\@ Corrected minor typographic mistakes, +% \changes{v1.8}{2017/01/08}{\@ Corrected minor typographic mistakes, % added signature and solved problems with shell escape} +% \changes{v1.81}{2017/01/08}{\@ Bugfixes for release v1.8} +% \changes{v1.9}{2018/03/02}{\@ Integrated uantwerpenexam class into package} +% % % \DoNotIndex{\newcommand,\newenvironment} % \setlength{\parindent}{0em} @@ -99,7 +104,9 @@ % \section{Introduction} % % This package implements the house style of Universiteit Antwerpen -% for course texts, master's theses and letters. +% for course texts, master's theses, letters and implements a class to +% format exams (which is for efficiency reasons and ease of copying +% not fully UAntwerpen house style compliant). % Using these class files will make it easy for you to make and keep % your course texts and master's theses compliant to this version and % future versions of the UAntwerpen house style. @@ -121,17 +128,20 @@ % \section{Synopsis} % The |uantwerpencoursetext| and |uantwerpenmasterthesis| classes are % an extension of the standard \LaTeX{} |book| class. They are -% intended -% to be used for writing course texts and master's theses. They -% provides a title page that is compliant to the UAntwerpen house -% style, and they also typeset the rest of your document -% appropriately. +% intended to be used for writing course texts and master's +% theses. They provides a title page that is compliant to the +% UAntwerpen house style, and they also typeset the rest of your +% document appropriately. % % The |uantwerpenletter| class is derived from the standard \LaTeX{} % |letter| class. It is intended to be used for writing business % letters. It is compliant to the house style and allows for using % windowed envelopes of the DL format, with right-aligned window. % +% The |uantwerpenexam| class is derived from the standard \LaTeX{} +% |article| class and is for efficiency reasons not fully UAntwerpen +% house style compliant. +% % They require (and use) the following packages: % \begin{itemize} % \item the |ifthen| package @@ -146,6 +156,7 @@ % \item the |fancyhdr| package % \item the |pst-barcode| package % \item the |auto-pst-pdf| package +% \item the |eso-pic| package % \end{itemize} % and optionally % \begin{itemize} @@ -156,9 +167,9 @@ % % \section{Portability} % This class file should be ready to use with all common \LaTeX{} -% compilers (PDF\LaTeX{}, \LaTeX{}, Xe\LaTeX{},\ldots) from the major -% \TeX{}-distributions (TeTeX, TexLive, MikTeX). If you experience -% problems, please inform the authors. +% compilers (PDF\LaTeX{}, \LaTeX{}, \XeLaTeX{}, \LuaLaTeX{}, \ldots) +% from the major \TeX{}-distributions (TeTeX, TexLive, MikTeX). If you +% experience problems, please inform the author. % % \section{Usage} % @@ -285,6 +296,10 @@ % \pageref{acronyms}. You may use lists in the |\carboncopy| and % |\enclosed| commands. The spacing will be compact. % +% \subsubsection{\texttt{uantwerpenletter} class} +% +% to be composed +% % \subsection{The class options explained} % % The classes have several options. They are listed below. @@ -298,7 +313,7 @@ % e-copy you make available, this may be appropriate; % % \DescribeMacro{filled} [letter / coursetext / -% masterthesis]\\ +% masterthesis / exam]\\ % This option causes the text to be filled (simultaneous left and % right alignment). Though this setting is not recommended, it is % provided because the default |\raggedright| cannot be undone. The @@ -326,6 +341,12 @@ % work with pdf\LaTeX{} unless you enable shell escape. Read your % pdf\LaTeX{}-package documentation on how to do that. % +% \DescribeMacro{examiner} [exam]\\ +% This option allows to set the exam class in examiner mode, +% mentioning the examiner mode on every page (as regular text in the +% header and also in a watermark) to make sure you never hand out +% that copy to students. +% % Common sets of options depend on the purpose: % \begin{itemize} % \item to make a text ready for electronic distribution: @@ -337,7 +358,9 @@ % is typeset based on table data: % |a4paper|, |qr|, |titlepagetableonly|. % \item to make a letter: -% no options (filling a letter is discouraged) +% no options (filling a letter is discouraged) +% \item to make an exam: +% no options (filling an exam is discouraged) % \end{itemize} % % \subsection{The macros explained} @@ -348,20 +371,24 @@ % applies (between square brackets), and whether it is mandatory or not. % % \DescribeMacro{\facultyacronym} [coursetext / -% masterthesis] (mandatory)\\ +% masterthesis / exam] (mandatory)\\ +% \label{md-facultyacronym} % This macro sets the acronym of the faculty. % This macro also sets the faculty name according to the specified % acronym. % If you're missing a faculty or institute, please ask the -% authors to complete the list. +% author to complete the list. % % The available acronyms are: +% \changes{v1.9}{2018/03/02}{\@ Added ASoE (Antwerp School of Education)} % \label{acronyms} % \begin{center} % \begin{tabular}{cl} % \toprule % Acronym & Faculty name \\ -% \midrule +% \midrule +% ASoE +% & Antwerp School of Education\\ % CPG % & Centrum Pieter Gillis\\ % FBD @@ -392,8 +419,7 @@ % % \subsubsection{Macros for the coursetext and masterthesis classes} % -% \DescribeMacro{\title} [coursetext / -% masterthesis] (mandatory)\\ +% \DescribeMacro{\title} [coursetext / masterthesis] (mandatory)\\ % This macro sets the title of the document. % It also sets the |pdftitle| tag of the hyperref package, so that % the PDF-document meta-information is correct. @@ -410,8 +436,7 @@ % This macro also sets the |subject| tag of the hyperref package, % so that the PDF-document meta-information is correct. % -% \DescribeMacro{\author} [coursetext / -% masterthesis] (mandatory)\\ +% \DescribeMacro{\author} [coursetext / masterthesis ] (mandatory)\\ % This macro sets the author of the document. % It also sets the |pdfauthor| tag of the hyperref package, so that % the PDF-document meta-information is correct. @@ -441,7 +466,8 @@ % macros |\lectureri|, |\lecturerii|, |\lectureriii|, % |\lectureriv|. % -% \DescribeMacro{\programme} [coursetext] (mandatory)\\ +% \DescribeMacro{\programme} [coursetext / exam] (mandatory)\\ +% \label{dm-programme} % This macro takes three arguments (for the time being, only % applicable to the faculty of applied engineering): % \begin{itemize} @@ -449,14 +475,14 @@ % \item the domain of the programme: IW % \item the qualifier of the programme: BK, CH, BCH, EM, EI % \end{itemize} -% If you need more programme classes or qualifiers, ask the authors to +% If you need more programme classes or qualifiers, ask the author to % complete the available codes. % Correct usage of the macro will result in error-free descriptions on % your title page. % You can overrule the standard descriptions, by specifying 'FREE' as % first argument and a free text description as second, leaving the third % one empty. However, we strongly advise against taking this route. -% Instead, ask the authors to complete the available codes. +% Instead, ask the author to complete the available codes. % % \DescribeMacro{\supervisor} [masterthesis] (mandatory)\\ % This is the name of the person that promotes the thesis. @@ -464,9 +490,11 @@ % macros |\supervisori|, |\supervisorii|, |\supervisoriii|, % |\supervisoriv|. % -% \DescribeMacro{\course} [coursetext] (mandatory)\\ +% \DescribeMacro{\course} [coursetext / exam] (mandatory)\\ +% \label{dm-course} % Code (first argument) and name (second argument) of the curriculum -% course this coursematerial belongs to. The code should be of the form:\\ +% course this coursematerial or exam belongs to. The code should be of +% the form:\\ % |TNNNFFFAAA|, % with: % \begin{center} @@ -497,8 +525,8 @@ % The macro for this purpose takes only one argument, i.e. the % course's name! This is to avoid inconsistencies in the course codes. % -% \DescribeMacro{\academicyear} [coursetext / -% masterthesis] (mandatory)\\ +% \DescribeMacro{\academicyear} [coursetext / masterthesis] +% (mandatory)\\ % Use this macro to specify the academic year in full, i.e. in the % form |XXXX-YYYY|. % @@ -663,7 +691,70 @@ % % \DescribeMacro{\enclosed} [letter] (optional)\\ % List of enclosed documents. Format at will. -% +% +% \subsubsection{Macros for the exam class} +% +% \DescribeMacro{\exampart} [exam] (mandatory)\\ +% Description of the part of the course the exam covers. +% Often the evaluation of a course consists of multiple evaluation +% elements (e.g. a written exam, a portfolio defense and lab +% reports). Using this macro you can indicate the part this exam +% covers. E.g. it could be 'Written Exam' (to distinguish from the +% other parts 'portfolio defense' and 'lab reports'). +% +% \DescribeMacro{\course} [exam] (mandatory)\\ +% see description of |\course| macro on page~\pageref{dm-course}. +% +% \DescribeMacro{\author} [exam] (mandatory)\\ +% The author of the exam (may be multiple authors, separated by +% commas). On the title page, these will be labeled as 'Professor(s) - +% Titularis(sen)'. +% +% \DescribeMacro{\programme} [exam] (mandatory)\\ +% see description of |\programme| macro on page~\pageref{dm-programme}. +% +% \DescribeMacro{\academicyear} [exam] (mandatory)\\ +% Use this macro to specify the academic year in full, i.e. in the +% form |XXXX-YYYY|. +% +% \DescribeMacro{\examgroupnumber} [exam]\\ +% mentions the group number (may be empty) +% +% \DescribeMacro{\examdate} +% specifies the date of the exam. We recommend the YYYY-MM-DD format, +% but you are free to chose your own coding scheme for dates. We +% advize against using UNIX epoch time, to avoid problems in the first +% semester exams in 2038. +% +% \DescribeMacro{\examlength} +% specifies the length of the exam in a unit of time, e.g. '4h' +% +% \DescribeMacro{\tstart} +% specifies the start time of the exam, preferrable in the format +% 'HHhMM', e.g. '08h30'. +% +% \DescribeMacro{\tend} +% specifies the end time of the exam in a format identical to the one +% chosen for |\tstart|. +% +% \DescribeMacro{\rooms} +% specifies the rooms in which the exam will take place. This is +% useless info for the student, but may be of convenience for you as +% author or supervisor of the exam. Use UAntwerpen standard room +% designators, e.g. 'G.U.025' for room number 025, on the +% Groenenborgercampus in the U-building. +% +% \DescribeMacro{\studentnr} +% specifies the exam copy number. This will appear on every page of +% the exam, easing the reassembly of pages that do not contain any +% name. Moreover, it allows for blind correction as the student only +% writes his name ot he front page. +% +% \DescribeMacro{\extrainfo} +% specifies the extra information that appears on the back of the +% title page, regarding the materials that can be used during the +% examination and cautioning the students not to commit fraude. +% % \subsection{Examples} % \subsubsection{\texttt{uantwerpencoursetext}} % @@ -1062,7 +1153,7 @@ doloribus asperiores repellat. % \begin{verbatim} %<*le-cfg> %% configuration file for uantwerpenletter class -\usepackage{fontspec} % XeLaTeX/LauTeX specific, replace by e.g. +\usepackage{fontspec} % XeLaTeX/LuaTeX specific, replace by e.g. \setmainfont{Calibri} % \usepackage{cmbright} \sender{Prof. Walter Daems}{Senior Lecturer} \facultyacronym{TI} @@ -1091,6 +1182,265 @@ doloribus asperiores repellat. % have multiple roles in the university. Just make sure they are on your % \LaTeX\ search path. % +% \subsubsection{\texttt{uantwerpenexam}} +% +% Below you can find two examples: +% \begin{itemize} +% \item A single column layout (single language) exam +% \item A double column layout (English-Dutch) exam +% \end{itemize} +% If you require more language combinations, aks the author to +% implement this. +% +% \paragraph{Single column} +% \begin{verbatim} +%<*ex-example1> +\documentclass[a4paper,10pt]{uantwerpenexam} +\usepackage{newpxtext} % demonstration of some fine font packages +\usepackage{newpxmath} +\usepackage{enumitem} +\usepackage[dutch]{babel} % last language loaded will + % determine logo version (change to + % [dutch] for a monolingual version) +\course{19876FTIDUM}{5-Bistrologie} +\author{Walter Daems} +\facultyacronym{TI} +\programme{BA}{IW}{EI} +\academicyear{2017-2018} +\exampart{Schriftelijk Examen} +\examgroupnumber{1 (eerste examenkans-inhaal)} +\examdate{2018-01-29} +\examlength{4h} +\tstart{08h30} +\tend{12h30} +\rooms{G.U.025} +\extrainfo{ + Belangrijke informatie:\\\par + Het volledige Onderwijs- en Examenregelement (OER) is van toepassing + op dit examen. + Toch wil ik vooraf nog een aantal regels duidelijk stellen: + \begin{enumerate} + \item Mogen op je tafeltje aanwezig zijn: + (1) schrijfgerief, los d.w.z. \emph{niet} in een pennenzak (geen + papier; er zit examenpapier bij de opgaven), + (2) je rekenmachine (zonder alfanumerieke data en zonder + geheugenkaarten), + (3) het formularium. + \item Volledig \emph{verboden te gebruiken}: alle apparatuur met + geheugen- of communicatiefunctionaliteit zoals GSM, smartphone, + smartwatch, muziekspeler, \ldots + Je tas staat vooraan in het lokaal. Hang je jas aan de kapstok of + leg hem bij je tas. + \item Schrijf je naam op het titelblad van de opgave in het daartoe + voorziene vak. Op de andere bladen schrijf je je naam + \emph{niet}. Je examenopgave heeft een uniek nummer dat toelaat het + te identificeren. + \item Neem je tijd om \emph{alle vragen schriftelijk te + beantwoorden}. Het puntengewicht van een vraag is bovenaan de vraag + op de opgavebladen vermeld. Wees volledig in je antwoord, maar ter + zake. Houd rekening met de beschikbare tijd. + \item Op het einde van het examen geef je \emph{alle} bladen weer af + aan de aanwezige docent. + \end{enumerate} + Succes! +} +\studentnr{127} +\begin{document} +\maketitle +\question{[VLATOP-BISTRO]} +\questionweight{3} + +Geef de eerste vijf laureaten van de VLATOP-bistro +competitie. + +\question{[BECHAMEL]} +\questionweight{7} + +Welk van de onderstaande ingredi\"enten hoort niet thuis in + een b\'echamel saus: +\mc{Melk} +\mc{Boter} +\mc{Bloem} +\mc{Eieren} +\mc{Suiker} + +\insertsolutionspagepartial{22} + +\insertsolutionspage{} +\clearpage + +\question{[BISTROCULTURE-1]} +\questionweight{10} + +\begin{enumerate}[label=\alph*)] +\item Bespreek de evolutie van de Noord-Europese bistrocultuur + gedurende de laatste vijftig jaar. +\item Breng dit in relatie tot de + opkomst van de georganiseerde recensies zoals die van Michelin en + Gault-Millau. +\end{enumerate} + +\insertsolutionspagepartial{25} +\foreach \i in {1,2,3} { + \insertsolutionspage{} +} +\foreach \i in {1,2} { + \insertsolutionspage{Kladpapier} +} +\end{document} +%</ex-example1> +% \end{verbatim} +% +% \paragraph{Two columns} +% \begin{verbatim} +%<*ex-example2> +\documentclass[a4paper,10pt]{uantwerpenexam} +\usepackage{newpxtext} % demonstration of some fine font packages +\usepackage{newpxmath} +\usepackage{enumitem} +\usepackage[dutch,english]{babel} % last language loaded will + % determine logo version (change to + % [dutch] for a monolingual version) +\course{19876FTIDUM}{5-Bistrology} +\author{Walter Daems} +\facultyacronym{TI} +\programme{BA}{IW}{EI} +\academicyear{2017-2018} +\exampart{Written Exam} +\examgroupnumber{1 (eerste examenkans-inhaal)} +\examdate{2018-01-29} +\examlength{4h} +\tstart{08h30} +\tend{12h30} +\rooms{G.U.025} +\extrainfo{ + \engdut{ + Important information:\\\par + The Education and Examination Regulations (EER) hold for this + examination in full. + However, before starting, I'd like to set some rules straight: + \begin{enumerate} + \item \emph{Can be used:} (1) writing gear (\emph{not} in a pencil + case); you don't need paper; there's plenty of paper in your exam + copy; + (2) your calculator (without alphanumerical data and without memory + cards); (3) the formula collection. + \item \emph{May not be used:} all equipment with memory or + communications facilities, like cell phones, smart phones, smart + watches, music players, \ldots + Your bag must be put in the front of the room. Put your coat on the + hallstand or next to your bag. + \item Write your name on the title page. Don't write your name on + the subsequent pages. Your copy has a unique number to identify it + as yours. + \item Take your time to \emph{answer all questions in writing}. The + point weights are listed above every question. Be complete in your + answer, but stick to the point. Take into account the available time. + \item Hand in \emph{all} papers to the staff member on duty, at the + end of the examination. + \end{enumerate} + Success! + } + { + Belangrijke informatie:\\\par + Het volledige Onderwijs- en Examenregelement (OER) is van toepassing + op dit examen. + Toch wil ik vooraf nog een aantal regels duidelijk stellen: + \begin{enumerate} + \item Mogen op je tafeltje aanwezig zijn: + (1) schrijfgerief, los d.w.z. \emph{niet} in een pennenzak (geen + papier; er zit examenpapier bij de opgaven), + (2) je rekenmachine (zonder alfanumerieke data en zonder + geheugenkaarten), + (3) het formularium. + \item Volledig \emph{verboden te gebruiken}: alle apparatuur met + geheugen- of communicatiefunctionaliteit zoals GSM, smartphone, + smartwatch, muziekspeler, \ldots + Je tas staat vooraan in het lokaal. Hang je jas aan de kapstok of + leg hem bij je tas. + \item Schrijf je naam op het titelblad van de opgave in het daartoe + voorziene vak. Op de andere bladen schrijf je je naam + \emph{niet}. Je examenopgave heeft een uniek nummer dat toelaat het + te identificeren. + \item Neem je tijd om \emph{alle vragen schriftelijk te + beantwoorden}. Het puntengewicht van een vraag is bovenaan de vraag + op de opgavebladen vermeld. Wees volledig in je antwoord, maar ter + zake. Houd rekening met de beschikbare tijd. + \item Op het einde van het examen geef je \emph{alle} bladen weer af + aan de aanwezige docent. + \end{enumerate} + Succes! + } +} + +\studentnr{29} +\begin{document} +\maketitle +\question{[VLATOP-BISTRO]} +\questionweight{3} + +\engdut{ + Write down the first five laureates of the VALTOP-bistro competition. +} +{ + Geef de eerste vijf laureaten van de VLATOP-bistro + competitie. +} + +\question{[BECHAMEL]} +\questionweight{7} + +\engdut{ + Which of the ingredients below does not belong in a b\'echamel + sauce: +} +{ + Welk van de onderstaande ingredi\"enten hoort niet thuis in + een b\'echamel saus: +} +\engdutmc{Milk}{Melk} +\engdutmc{Butter}{Boter} +\engdutmc{Flower}{Bloem} +\engdutmc{Eggs}{Eieren} +\engdutmc{Sugar}{Suiker} + +\insertsolutionspagepartial{20} + +\insertsolutionspage{} +\clearpage + +\question{[BISTROCULTURE-1]} +\questionweight{10} + +\engdut{ + \begin{enumerate}[label=\alph*)] + \item Discuss the evolution of the Northern European bistro culture during + the latest fifty years. + \item Relate this to the rise of organized reviews + like the ones of Michelin and Gault-Millau. + \end{enumerate} +} +{ + \begin{enumerate}[label=\alph*)] + \item Bespreek de evolutie van de Noord-Europese bistrocultuur + gedurende de laatste vijftig jaar. + \item Breng dit in relatie tot de + opkomst van de georganiseerde recensies zoals die van Michelin en + Gault-Millau. + \end{enumerate} +} + +\insertsolutionspagepartial{22.5} +\foreach \i in {1,2,3} { + \insertsolutionspage{} +} +\foreach \i in {1,2} { + \insertsolutionspage{Kladpapier} +} +\end{document} +%</ex-example2> +% \end{verbatim} +% % \StopEventually{\clearpage\PrintChanges\clearpage\PrintIndex} % % \section{Implementation} @@ -1098,13 +1448,14 @@ doloribus asperiores repellat. % \subsection{Class inheritance} % % -% For convenience, we'll derive from the standard \LaTeX{} |book| and -% |letter| class. +% For convenience, we'll derive from the standard \LaTeX{} |book|, +% |letter| and |article| class. % % \changes{v1.0}{2013/05/11}{Added option titlepagetableonly} % \changes{v1.0}{2013/05/11}{Added option titlepagenoartwork} % \changes{v1.0}{2013/05/11}{Added option qr} % \changes{v1.4}{2016/01/07}{Implemented letter class} +% \changes{v1.9}{2018/03/02}{Implemented uantwerpenexam class} % % Before loading the class, we provide the extra options. % @@ -1128,11 +1479,22 @@ doloribus asperiores repellat. \newif\if@filled \DeclareOption{filled}{\@filledtrue} %</ct|mt|le> +%<*ex> +\newif\if@examiner +\DeclareOption{examiner}{\@examinertrue} +%</ex> % \end{macrocode} % +% % We execute some standard options: -% We load the |book| class. +% We load the |book| class for course texts and master theses. % \begin{macrocode} +%<*ct|mt> +\ExecuteOptions{a4paper,11pt,final,oneside,openright} +\ProcessOptions +\LoadClassWithOptions{book} +%</ct|mt> +% We load the |letter| class for letters %<*le> \ExecuteOptions{a4paper,10pt,final,oneside,openright} \ProcessOptions @@ -1140,11 +1502,12 @@ doloribus asperiores repellat. \newcommand\tat{\makeatletter @\makeatother} \newcommand\tbs{\textbackslash} %</le> -%<*ct|mt> -\ExecuteOptions{a4paper,11pt,final,oneside,openright} +% We load the |article| class for exams +%<*ex> +\ExecuteOptions{a4paper,twoside,10pt} \ProcessOptions -\LoadClassWithOptions{book} -%</ct|mt> +\LoadClassWithOptions{article} +%</ex> % \end{macrocode} % % \subsection{Modern typesetting} @@ -1152,11 +1515,11 @@ doloribus asperiores repellat. % and with a decent paragraph spacing. % % \begin{macrocode} -%<*ct|mt|le> +%<*ct|mt|le|ex> \setlength{\parindent}{0pt} \addtolength{\parskip}{0.75\baselineskip} \setcounter{secnumdepth}{3} -%</ct|mt|le> +%</ct|mt|le|ex> % \end{macrocode} % % \subsection{Auxiliary packages} @@ -1166,9 +1529,9 @@ doloribus asperiores repellat. % \subsubsection{Geometry} % Let's reduce the margins to 1 inch each. % \begin{macrocode} -%<*ct|mt> +%<*ct|mt|ex> \RequirePackage[top=1in, bottom=1in, left=1in, right=1in]{geometry} -%</ct|mt> +%</ct|mt|ex> %<*le> \RequirePackage[top=1in, bottom=1in, left=1.34in, right=1in]{geometry} \RequirePackage[normalem]{ulem} @@ -1179,7 +1542,8 @@ doloribus asperiores repellat. % \subsubsection{Font packages} % Note that the use of cmbright is no % longer imposed (as of v1.3). Using a good font is now up to the -% user. The packages 'mathpazo' and 'cmbright' are highly recommended. +% user. The packages 'newpxtext/newpxmath' and 'cmbright' are highly +% recommended. % For writing letters, 'Calibri' is the official font of the % University of Antwerp. % \changes{v1.2}{2014/08/22}{Added lmodern package to please MikTeX} @@ -1195,14 +1559,19 @@ doloribus asperiores repellat. % % Some boilerplate packages and an empty macro to test against % (using|\ifx|) -% \changes{v1.8}{2017/01/08}{Added missing packages ifmtarg and shellesc} -% \begin{macrocode} -%<*ct|mt|le> +% \changes{v1.8}{2017/01/08}{Added missing packages ifmtarg and +% shellesc} +% \changes{v1.81}{2017/01/09}{Apparently shellesc is still missing from +% quite a number of installations, therefore, conditional loading} +% \changes{v1.9}{2018/03/02}{Added etoolbox for convenience reasons} +% \begin{macrocode} +%<*ct|mt|le|ex> +\RequirePackage{etoolbox} \RequirePackage{ifthen} \RequirePackage{ifmtarg} -\RequirePackage{shellesc} +\IfFileExists{shellesc.sty}{\RequirePackage{shellesc}}{} \newcommand{\@emptymacro}{} -%</ct|mt|le> +%</ct|mt|le|ex> % \end{macrocode} % % \subsubsection{Graphics packages} @@ -1213,11 +1582,12 @@ doloribus asperiores repellat. % Some packages for coursetext and masterthesis: % \changes{v1.3}{2015/12/31}{Added inclusion of background package} % \begin{macrocode} -%<*ct|mt|le> +%<*ct|mt|le|ex> \RequirePackage{graphicx} \RequirePackage{color} \RequirePackage{tikz} -%</ct|mt|le> +\RequirePackage{eso-pic} +%</ct|mt|le|ex> %<*ct> \if@copyright \RequirePackage[firstpage=false,contents={Copyright University of Antwerp, All Rights Reserved},color=lightgray,scale=3]{background} @@ -1243,15 +1613,15 @@ doloribus asperiores repellat. % % The de-facto standard for headers and footers: % \begin{macrocode} -%<*ct|mt|le> +%<*ct|mt|le|ex> \RequirePackage{fancyhdr} -%</ct|mt|le> +%</ct|mt|le|ex> % \end{macrocode} % % \subsection{Colors} % % \begin{macrocode} -%<*ct|mt|le> +%<*ct|mt|le|ex> \definecolor{uacorpbord}{cmyk} {0.00,1.00,0.60,0.37} \definecolor{uacorpblue}{cmyk} {1.00,0.25,0.00,0.50} \definecolor{uacorplightblue}{cmyk}{1.00,0.00,0.08,0.13} @@ -1259,7 +1629,8 @@ doloribus asperiores repellat. \definecolor{uaftifresh}{cmyk} {0.34,1.00,0.00,0.00} \definecolor{uaftisober}{cmyk} {0.10,1.00,0.00,0.49} \definecolor{lightgray}{cmyk} {0.00,0.00,0.00,0.05} -%</ct|mt|le> +\definecolor{watermark}{cmyk} {0.00,0.00,0.00,0.05} +%</ct|mt|le|ex> % \end{macrocode} % % \subsection{Babel provisions} @@ -1267,7 +1638,7 @@ doloribus asperiores repellat. % \changes{v1.7}{2016/05/01}{Added babel tags of elements % of master's thesis title page} % \begin{macrocode} -%<*ct|mt|le> +%<*ct|mt|le|ex> \newcommand{\uaname}{University of Antwerp} \newcommand{\logoname}{UA_HOR_ENG_CMYK} \newcommand{\footername}{4E_PMS302_BR_ENG_RGB} @@ -1279,6 +1650,35 @@ doloribus asperiores repellat. \newcommand{\masterthesisname}{Master's thesis} \newcommand{\promotorsname}{Promoters} \newcommand{\thesisname}{Thesis to obtain the degree of} +\newcommand{\@faculty}{< Specify faculty using \tbs{}facultyacronym\{ABC\} >} +\newcommand{\faccpg}{ + \renewcommand\@faculty{Centre Pieter Gillis}} +\newcommand{\facfbd}{ + \renewcommand\@faculty{ + Faculty of Pharmaceutical, Biomedical and Veterinary Sciences}} +\newcommand{\facggw}{ + \renewcommand\@faculty{Faculty of Medicine and Health Sciences}} +\newcommand{\insiob}{ + \renewcommand\@faculty{Insitute of Development Policy}} +\newcommand{\insoiw}{ + \renewcommand\@faculty{Institute of Educations and Information Sciences}} +\newcommand{\asoe}{ + \renewcommand\@faculty{Antwerp School of Education}} +\newcommand{\faclw}{ + \renewcommand\@faculty{Faculty of Arts}} +\newcommand{\facow}{ + \renewcommand\@faculty{Faculty of Design Sciences}} +\newcommand{\facsw}{ + \renewcommand\@faculty{Faculty of Social Sciences}} +\newcommand{\facrec}{ + \renewcommand\@faculty{Faculty of Law}} +\newcommand{\factew}{ + \renewcommand\@faculty{Faculty of Applied Economics}} +\newcommand{\facti}{ + \renewcommand\@faculty{Faculty of Applied Engineering}} +\newcommand{\facwet}{ + \renewcommand\@faculty{Faculty of Science}} +\newcommand{\weightname}{Weight} \AtBeginDocument{ \@ifpackageloaded{babel}{ \addto\captionsdutch{% @@ -1294,6 +1694,40 @@ doloribus asperiores repellat. \renewcommand{\promotorsname}{Promotoren} \renewcommand{\thesisname}{Proefschrift tot het behalen van de graad van} + \renewcommand{\faccpg}{ + \renewcommand\@faculty{Centrum Pieter Gillis}} + \renewcommand{\facfbd}{ + \renewcommand\@faculty{ + Faculteit Farmaceutische, Biomedische en Diergeneeskundige + Wetenschappen}} + \renewcommand{\facggw}{ + \renewcommand\@faculty{Faculteit Geneeskunde en + Gezondheidswetenschappen}} + \renewcommand{\insiob}{ + \renewcommand\@faculty{Instituut voor Ontwikkelingsbeleid- en + beheer}} + \renewcommand{\insoiw}{ + \renewcommand\@faculty{Instituut voor Onderwijs- en + Informatiewetenschappen}} + \renewcommand{\asoe}{ + \renewcommand\@faculty{Antwerp School of Education}} + \renewcommand{\faclw}{\renewcommand\@faculty{Faculteit + Letteren en Wijsbegeerte}} + \renewcommand{\facow}{ + \renewcommand\@faculty{Faculteit Ontwerpwetenschappen}} + \renewcommand{\facsw}{ + \renewcommand\@faculty{Faculteit Sociale Wetenschappen}} + \renewcommand{\facrec}{ + \renewcommand\@faculty{Faculteit Rechten}} + \renewcommand{\factew}{ + \renewcommand\@faculty{Faculteit Toegepaste Economische + Wetenschappen}} + \renewcommand{\facti}{ + \renewcommand\@faculty{Faculteit Toegepaste + Ingenieurswetenschappen}} + \renewcommand{\facwet}{ + \renewcommand\@faculty{Faculteit Wetenschappen}} + \renewcommand{\weightname}{Gewicht} } \addto\captionsgerman{% \renewcommand{\uaname}{Universit\"at Antwerpen} @@ -1308,6 +1742,40 @@ doloribus asperiores repellat. \renewcommand{\promotorsname}{Veranstalter} \renewcommand{\thesisname}{Dissertation zur Erreichung des Grades der} + \renewcommand{\faccpg}{ + \renewcommand\@faculty{Centrum Pieter Gillis}} + \renewcommand{\facfbd}{ + \renewcommand\@faculty{ + Faculteit Farmaceutische, Biomedische en Diergeneeskundige + Wetenschappen}} + \renewcommand{\facggw}{ + \renewcommand\@faculty{Faculteit Geneeskunde en + Gezondheidswetenschappen}} + \renewcommand{\insiob}{ + \renewcommand\@faculty{Instituut voor Ontwikkelingsbeleid- en + beheer}} + \renewcommand{\insoiw}{ + \renewcommand\@faculty{Instituut voor Onderwijs- en + Informatiewetenschappen}} + \renewcommand{\asoe}{ + \renewcommand\@faculty{Antwerp School of Education}} + \renewcommand{\faclw}{\renewcommand\@faculty{Faculteit + Letteren en Wijsbegeerte}} + \renewcommand{\facow}{ + \renewcommand\@faculty{Faculteit Ontwerpwetenschappen}} + \renewcommand{\facsw}{ + \renewcommand\@faculty{Faculteit Sociale Wetenschappen}} + \renewcommand{\facrec}{ + \renewcommand\@faculty{Faculteit Rechten}} + \renewcommand{\factew}{ + \renewcommand\@faculty{Faculteit Toegepaste Economische + Wetenschappen}} + \renewcommand{\facti}{ + \renewcommand\@faculty{Faculteit Toegepaste + Ingenieurswetenschappen}} + \renewcommand{\facwet}{ + \renewcommand\@faculty{Faculteit Wetenschappen}} + \renewcommand{\weightname}{Gewicht} } \addto\captionsfrench{% \renewcommand{\uaname}{Universit\'e d'Anvers} @@ -1321,6 +1789,40 @@ doloribus asperiores repellat. \renewcommand{\masterthesisname}{Th\`ese de master} \renewcommand{\promotorsname}{Promoteurs} \renewcommand{\thesisname}{Th\`ese \`a l'atteinte du degr\'e de} + \renewcommand{\faccpg}{ + \renewcommand\@faculty{Centrum Pieter Gillis}} + \renewcommand{\facfbd}{ + \renewcommand\@faculty{ + Faculteit Farmaceutische, Biomedische en Diergeneeskundige + Wetenschappen}} + \renewcommand{\facggw}{ + \renewcommand\@faculty{Faculteit Geneeskunde en + Gezondheidswetenschappen}} + \renewcommand{\insiob}{ + \renewcommand\@faculty{Instituut voor Ontwikkelingsbeleid- en + beheer}} + \renewcommand{\insoiw}{ + \renewcommand\@faculty{Instituut voor Onderwijs- en + Informatiewetenschappen}} + \renewcommand{\asoe}{ + \renewcommand\@faculty{Antwerp School of Education}} + \renewcommand{\faclw}{\renewcommand\@faculty{Faculteit + Letteren en Wijsbegeerte}} + \renewcommand{\facow}{ + \renewcommand\@faculty{Faculteit Ontwerpwetenschappen}} + \renewcommand{\facsw}{ + \renewcommand\@faculty{Faculteit Sociale Wetenschappen}} + \renewcommand{\facrec}{ + \renewcommand\@faculty{Faculteit Rechten}} + \renewcommand{\factew}{ + \renewcommand\@faculty{Faculteit Toegepaste Economische + Wetenschappen}} + \renewcommand{\facti}{ + \renewcommand\@faculty{Faculteit Toegepaste + Ingenieurswetenschappen}} + \renewcommand{\facwet}{ + \renewcommand\@faculty{Faculteit Wetenschappen}} + \renewcommand{\weightname}{Poids} } \addto\captionsspanish{% \renewcommand{\uaname}{Universidad de Amberes} @@ -1335,11 +1837,45 @@ doloribus asperiores repellat. \renewcommand{\promotorsname}{Promotores} \renewcommand{\thesisname}{Disertaci\'on a la consecuci\'on del grado de} + \renewcommand{\faccpg}{ + \renewcommand\@faculty{Centrum Pieter Gillis}} + \renewcommand{\facfbd}{ + \renewcommand\@faculty{ + Faculteit Farmaceutische, Biomedische en Diergeneeskundige + Wetenschappen}} + \renewcommand{\facggw}{ + \renewcommand\@faculty{Faculteit Geneeskunde en + Gezondheidswetenschappen}} + \renewcommand{\insiob}{ + \renewcommand\@faculty{Instituut voor Ontwikkelingsbeleid- en + beheer}} + \renewcommand{\insoiw}{ + \renewcommand\@faculty{Instituut voor Onderwijs- en + Informatiewetenschappen}} + \renewcommand{\asoe}{ + \renewcommand\@faculty{Antwerp School of Education}} + \renewcommand{\faclw}{\renewcommand\@faculty{Faculteit + Letteren en Wijsbegeerte}} + \renewcommand{\facow}{ + \renewcommand\@faculty{Faculteit Ontwerpwetenschappen}} + \renewcommand{\facsw}{ + \renewcommand\@faculty{Faculteit Sociale Wetenschappen}} + \renewcommand{\facrec}{ + \renewcommand\@faculty{Faculteit Rechten}} + \renewcommand{\factew}{ + \renewcommand\@faculty{Faculteit Toegepaste Economische + Wetenschappen}} + \renewcommand{\facti}{ + \renewcommand\@faculty{Faculteit Toegepaste + Ingenieurswetenschappen}} + \renewcommand{\facwet}{ + \renewcommand\@faculty{Faculteit Wetenschappen}} + \renewcommand{\weightname}{Peso} } } {} } -%</ct|mt|le> +%</ct|mt|le|ex> % \end{macrocode} % % \subsection{Tags} @@ -1351,38 +1887,28 @@ doloribus asperiores repellat. % correctly. % % \begin{macrocode} -%<*ct|mt|le> +%<*ct|mt|le|ex> \newcommand{\@facultyacronym}{} -\newcommand{\@faculty}{< Specify faculty using \tbs{}facultyacronym\{ABC\} >} \newcommand{\facultyacronym}[1]{ \renewcommand{\@facultyacronym}{#1} - \ifthenelse{\equal{#1}{CPG}}{\renewcommand\@faculty{Centrum - Pieter Gillis}}{ - \ifthenelse{\equal{#1}{FBD}}{\renewcommand\@faculty{Faculteit - Farmaceutische, Biomedische en Diergeneeskundige Wetenschappen}}{ - \ifthenelse{\equal{#1}{GGW}}{\renewcommand\@faculty{Faculteit - Geneeskunde en Gezondheidswetenschappen}}{ - \ifthenelse{\equal{#1}{IOB}}{\renewcommand\@faculty{Instituut - voor Ontwikkelingsbeleid- en beheer}}{ - \ifthenelse{\equal{#1}{IOIW}}{\renewcommand\@faculty{Instituut - voor Onderwijs- en Informatiewetenschappen}}{ - \ifthenelse{\equal{#1}{LW}}{\renewcommand\@faculty{Faculteit - Letteren en Wijsbegeerte}}{ - \ifthenelse{\equal{#1}{OW}}{\renewcommand\@faculty{Faculteit - Ontwerpwetenschappen}}{ - \ifthenelse{\equal{#1}{SW}}{\renewcommand\@faculty{Faculteit - Sociale Wetenschappen}}{ - \ifthenelse{\equal{#1}{REC}}{\renewcommand\@faculty{Faculteit - Rechten}}{ - \ifthenelse{\equal{#1}{TEW}}{\renewcommand\@faculty{Faculteit - Toegepaste Economische Wetenschappen}}{ - \ifthenelse{\equal{#1}{TI}}{\renewcommand\@faculty{Faculteit - Toegepaste Ingenieurswetenschappen}}{ - \ifthenelse{\equal{#1}{WET}}{\renewcommand\@faculty{Faculteit - Wetenschappen}}{ - \errmessage{Error: wrong faculty acronym; choose one of FBD, GGW, - LW, OW, PSW, REC, TEW, TI, WET}}}}}}}}}}}}}} -%</ct|mt|le> + \AtBeginDocument{ + \ifthenelse{\equal{#1}{CPG}}{\faccpg}{ + \ifthenelse{\equal{#1}{FBD}}{\facfbd}{ + \ifthenelse{\equal{#1}{GGW}}{\facggw}{ + \ifthenelse{\equal{#1}{IOB}}{\insiob}{ + \ifthenelse{\equal{#1}{IOIW}}{\insoiw}{ + \ifthenelse{\equal{#1}{ASoE}}{\asoe}{ + \ifthenelse{\equal{#1}{LW}}{\faclw}{ + \ifthenelse{\equal{#1}{OW}}{\facow}{ + \ifthenelse{\equal{#1}{SW}}{\facsw}{ + \ifthenelse{\equal{#1}{REC}}{\facrec}{ + \ifthenelse{\equal{#1}{TEW}}{\factew}{ + \ifthenelse{\equal{#1}{TI}}{\facti}{ + \ifthenelse{\equal{#1}{WET}}{\facwet}{ + \errmessage{Error: wrong faculty acronym; choose one of CPG, FBD, GGW, + IOB, IOIW, ASoE, LW, OW, SW, REC, TEW, TI, WET}}}}}}}}}}}}}}} +} +%</ct|mt|le|ex> % \end{macrocode} % \end{macro} % @@ -1430,11 +1956,25 @@ doloribus asperiores repellat. %</ct> % \end{macrocode} % \end{macro} +% +% \begin{macro}{\shorttitle} +% This macro sets the |\@shorttitle| tag that later will be used +% in the |uantwerpenexam| class. +% \begin{macrocode} +%<*ex> +\newcommand{\@shorttitle}{} +\newcommand{\shorttitle}[1]{% + \renewcommand\@shorttitle{#1} +} +%</ex> +% \end{macrocode} +% \end{macro} % % \begin{macro}{\author} % The |author| tag is native to \LaTeX{}. It sets the |\@author| % tag that will be used on the title page. -% However, in view of the qr trouble, we fiddle a little with it. +% However, in view of the qr trouble, we fiddle a little with it for +% the |uantwerpencoursetext| class. % In case the title contains accented characters, you also % need to provide a qr version in full unicode (so without the % traditional \LaTeX{} accented characters.) @@ -1599,7 +2139,7 @@ E cursusdienst.cgb@uantwerpen.be} % data as QR data. % % \begin{macrocode} -%<*ct> +%<*ct|ex> \newcommand{\@programmet}{} % type \newcommand{\@programmec}{} % class \newcommand{\@programmecqr}{} % class for qr code @@ -1647,15 +2187,15 @@ E cursusdienst.cgb@uantwerpen.be} \ifthenelse{\equal{#2}{IW}\and\not\equal{#3}{}} {\renewcommand{\@programmes}{: }}{} } -%</ct> +%</ct|ex> % \end{macrocode} % \end{macro} % % \begin{macro}{\course} -% This macro sets many |\@coursecode| and |\@course| tags (max. 4) -% that later will -% be used on the title page. If there is only one course code -% one can use the convenient shorthand without counter. +% Four the |coursetext| class, this macro sets many |\@coursecode| +% and |\@course| tags (max. 4) that later will be used on the title +% page. If there is only one course code one can use the convenient +% shorthand without counter. % \begin{macrocode} %<*ct> \newcommand{\@coursecodei}{} @@ -1720,7 +2260,21 @@ E cursusdienst.cgb@uantwerpen.be} \newcommand{\qrcourseiv}[1]{ \renewcommand{\@qrcourseiv}{#1} } -%</ct> +%</ct> +% \end{macrcode} +% For the |exam| class (assuming that an exam only holds for a +% single course), the situation is simple and we assume only a +% single coursecode and course name. We also don't need any of the +% QR stamp stuff. +% \begin{macrocode} +%<*ex> +\newcommand{\@coursecodei}{} +\newcommand{\@coursei}{} +\newcommand{\course}[2]{ + \renewcommand{\@coursecodei}{#1} + \renewcommand{\@coursei}{#2} +} +%</ex> % \end{macrocode} % \end{macro} % @@ -1800,10 +2354,10 @@ E cursusdienst.cgb@uantwerpen.be} % This macro sets the |\@academicyear| tag that later will be used on % the title page. % \begin{macrocode} -%<*ct|mt> +%<*ct|mt|ex> \newcommand{\@academicyear}{XXX-YYYY} \newcommand{\academicyear}[1]{\renewcommand{\@academicyear}{#1}} -%</ct|mt> +%</ct|mt|ex> % \end{macrocode} % \end{macro} % @@ -1835,10 +2389,10 @@ E cursusdienst.cgb@uantwerpen.be} % This macro sets the |\@logo| tag that will be used to load a % graphics file with that name. % \begin{macrocode} -%<*le> +%<*le|ex> \newcommand{\@logo}{\logoname} \newcommand{\logo}[1]{\renewcommand{\@unit}{#1}} -%</le> +%</le|ex> % \end{macrocode} % \end{macro} % @@ -2027,17 +2581,109 @@ E cursusdienst.cgb@uantwerpen.be} % \end{macrocode} % \end{macro} % -% % \DescribeMacro{\address} [uantwerpenletter] (mandatory)\\ -% % Address of the sending unit (or faculty). This can be different from -% % the return address. Newlines are allowed and encouraged. -% % -% % \DescribeMacro{\date} [uantwerpenletter] (optional) \\ -% % Date of the letter. If not specified today's date (at the time of -% % running \LaTeX{}) will be used. -% % +% \begin{macro}{\exampart} +% This macro will set the |\@examgropunumber| tag that will be used on +% the exam title page. +% \begin{macrocode} +%<*ex> +\newcommand{\@exampart}{} +\newcommand{\exampart}[1]{\renewcommand{\@exampart}{#1}} +%</ex> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\examgroupnumber} +% This macro will set the |\@examgroupnumber| tag that will be used on +% the exam title page. +% \begin{macrocode} +%<*ex> +\newcommand{\@examgroupnumber}{} +\newcommand{\examgroupnumber}[1]{\renewcommand{\@examgroupnumber}{#1}} +%</ex> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\examdate} +% This macro will set the |\@examdate| tag that will be used on +% the exam title page. +% \begin{macrocode} +%<*ex> +\newcommand{\@examdate}{TBD} +\newcommand{\examdate}[1]{\renewcommand{\@examdate}{#1}} +%</ex> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\examlength} +% This macro will set the |\@examlength| tag that will be used on +% the exam title page. +% \begin{macrocode} +%<*ex> +\newcommand{\@examlength}{TBD} +\newcommand{\examlength}[1]{\renewcommand{\@examlength}{#1}} +%</ex> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\tstart} +% This macro will set the |\@tstart| tag that will be used on +% the exam title page. +% \begin{macrocode} +%<*ex> +\newcommand{\@tstart}{TBD} +\newcommand{\tstart}[1]{\renewcommand{\@tstart}{#1}} +%</ex> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\tend} +% This macro will set the |\@tend| tag that will be used on +% the exam title page. +% \begin{macrocode} +%<*ex> +\newcommand{\@tend}{TBD} +\newcommand{\tend}[1]{\renewcommand{\@tend}{#1}} +%</ex> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\rooms} +% This macro will set the |\@rooms| tag that will be used on +% the exam title page. +% \begin{macrocode} +%<*ex> +\newcommand{\@rooms}{TBD} +\newcommand{\rooms}[1]{\renewcommand{\@rooms}{#1}} +%</ex> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\extrainfo} +% This macro will set the |\@extrainfo| tag that will be used on +% the back of the exam title page. +% \begin{macrocode} +%<*ex> +\newcommand{\@extrainfo}{TBD} +\newcommand{\extrainfo}[1]{\renewcommand{\@extrainfo}{#1}} +%</ex> +% \end{macrocode} +% \end{macro} +% +% +% \begin{macro}{\studentnr} +% This macro will set the |\@studentnr| tag that will be used in the +% header of the pages. +% \begin{macrocode} +%<*ex> +\newcommand{\@studentnr}{0} +\newcommand{\studentnr}[1]{\renewcommand{\@studentnr}{#1}} +%</ex> +% \end{macrocode} +% \end{macro} +% % \subsection{Header and Footer} % The |fancyhdr| package is used to make a decent header and footer. -% The header and footer of the |uantwerpencoursetext| package are defined to be: +% The header and footer of the |uantwerpencoursetext| class are defined to be: % \begin{macrocode} %<*ct> \if@twoside @@ -2058,7 +2704,7 @@ E cursusdienst.cgb@uantwerpen.be} %</ct> % \end{macrocode} % -% The header and footer of the |uantwerpenmasterthesis| package are +% The header and footer of the |uantwerpenmasterthesis| class are % defined to be: % \begin{macrocode} %<*mt> @@ -2080,7 +2726,7 @@ E cursusdienst.cgb@uantwerpen.be} %</mt> % \end{macrocode} % -% The header and footer of the |uantwerpenletter| package are +% The header and footer of the |uantwerpenletter| class are % defined to be: % \begin{macrocode} %<*le> @@ -2093,6 +2739,27 @@ E cursusdienst.cgb@uantwerpen.be} %</le> % \end{macrocode} % +% The header and footer of the |uantwerpenexam| class are defined to +% be: +% \begin{macrocode} +%<*ex> +\lhead[]{} +\chead[]{} +\if@examiner +\rhead[\small EXAMINER VERSION]{\small EXAMINER VERSION} +\AddToShipoutPicture{ + \put(60,40){\rotatebox{60}{\textcolor{watermark}{ + \fontfamily{phv}\fontsize{105}{130}\fontseries{m}\fontshape{n}\selectfont Examiner Version}}}} +\else +\rhead[\small Student nr. \@studentnr]{\small Student nr. \@studentnr} +\fi +\lfoot[\small \@shorttitle]{\small \@shorttitle} +\cfoot[\small \thepage/\pageref{lastpage}]{\small\thepage/\pageref{lastpage}} +\rfoot[\small Groep \@examgroupnumber{} --- +\@academicyear]{\small Groep \@examgroupnumber{} --- \@academicyear} +%</ex> +% \end{macrocode} + % Some common code remains: % \changes{v1.1}{2013/05/28}{Made raggedright conditional on option % 'filled', because it can't be undone} @@ -2108,6 +2775,10 @@ E cursusdienst.cgb@uantwerpen.be} \renewcommand{\headrulewidth}{0pt} \renewcommand{\footrulewidth}{0pt} %</le> +%<*ex> +\renewcommand{\headrulewidth}{0pt} +\renewcommand{\footrulewidth}{1pt} +%</ex> % \end{macrocode} % % Remains to take care of filling @@ -2531,7 +3202,7 @@ L: \@qrlectureri % \end{macrocode} % \end{macro} % -% \subsection{Letter} +% \subsection{Title page for the letter class} % % \subsubsection{Bottom cords} % \changes{v1.5}{2016/01/11}{Removed documentation} @@ -2614,6 +3285,319 @@ L: \@qrlectureri %</le> % \end{macrocode} % +% \subsection{Title page for the exam class} +% +% \begin{macro}{\maketitle} +% The title page of the exam class is generated using the |\maketitle| +% command. +% +% \begin{macrocode} +%<*ex> +\renewcommand\maketitle{% + \pagestyle{fancy} + \AddToShipoutPicture*{% + \put(0,0){% + \begin{tikzpicture}[remember picture,overlay] + \node at (current page.center) { + \begin{tikzpicture} + \clip (0,0) rectangle (21,29.7); + \draw + ( 3,9.7) -- ( 3,23.7) + ( 0,23.7) -- (21,23.7) + ( 3,19.7) -- (21,19.7) + ( 3,17.7) -- (21,17.7) + ( 3,15.7) -- (21,15.7) + (14,11.7) -- (14,15.7) + ( 3,13.7) -- (21,13.7) + ( 3,11.7) -- (21,11.7) + ( 0,9.7) -- (21,9.7); + + \draw[ultra thick] + ( 3,15.7) +(0,-0.5) -- +(0,0) -- +(0.5,0) + ( 3,13.7) +(0,+0.5) -- +(0,0) -- +(0.5,0) + (14,15.7) +(-0.5,0) -- +(0,0) +(0,-0.5) -- +(0,0) -- +(0.5,0) + (14,13.7) +(-0.5,0) -- +(0,0) +(0,+0.5) -- +(0,0) -- +(0.5,0) + (21,15.7) +(0,-0.5) -- +(0,0) -- +(-0.5,0) + (21,13.7) +(0,+0.5) -- +(0,0) -- +(-0.5,0); + + \path + (3,25.2) node[anchor=north west] { + \parbox{14cm}{ + \fontfamily{phv}\fontsize{12}{15}\fontseries{b}\selectfont + \@faculty\\ + \fontfamily{phv}\fontsize{11}{14}\fontseries{m}\selectfont + \@programmet \@programmec\ + \ifx\@programmeq\@emptymacro\else--- \@programmeq\fi + } + } + (3.3,23.0) node[anchor=north west] { + \parbox{14cm}{ + \fontfamily{phv}\fontsize{12}{15}\selectfont + \@academicyear + } + } + (3.3,21.9) node[anchor=north west] { + \parbox{16cm}{ + \fontfamily{phv}\fontsize{18}{22}\fontseries{b}\fontshape{n}\selectfont + \raggedright \@coursei --- \@exampart + \fontfamily{phv}\fontsize{12}{18}\fontseries{m}\fontshape{n}\selectfont\\ + Groep \@examgroupnumber{} \hfill \@examdate{} } + } + (3.3,19) node[anchor=north west] { + \parbox{14cm}{ + \fontfamily{phv}\fontsize{12}{15}\fontseries{m}\selectfont + \@coursecodei + } + } + (3.3,17.5) node[anchor=north west] { + \parbox{14cm}{ + \fontfamily{phv}\fontsize{12}{18}\fontseries{m}\fontshape{n}\selectfont + \raggedright \ifdef{\dateenglish}{Professor(s) --- }{}Titularis(sen):\\ + \fontfamily{phv}\fontsize{14}{20}\fontseries{m}\fontshape{n}\selectfont + \raggedright \@author{} + } + } + (3.3,15.5) node[anchor=north west] { + \parbox{10cm}{ + \fontfamily{phv}\fontsize{12}{15}\fontseries{m}\fontshape{n}\selectfont + \raggedright \ifdef{\dateenglish}{Last name/First name + --- }{} + Naam/Voornaam:} + } + (14.3,15.5) node[anchor=north west] { + \parbox{5cm}{ + \fontfamily{phv}\fontsize{12}{15}\fontseries{m}\fontshape{n}\selectfont + \raggedright \ifdef{\dateenglish}{Registration No. --- }{}Rolnr.:} + } + (3.3,13.5) node[anchor=north west] { + \parbox{14cm}{ + \fontfamily{phv}\fontsize{12}{21}\fontseries{m}\fontshape{n}\selectfont + \raggedright \ifdef{\dateenglish}{Exam duration --- }{}Duur van het examen: \@examlength\\ + } + } + (14.3,13.5) node[anchor=north west] { + \parbox{5cm}{ + \fontfamily{phv}\fontsize{12}{15}\fontseries{m}\fontshape{n}\selectfont + \raggedright \ifdef{\dateenglish}{Start --- }{}Begin: \@tstart \\[1ex] + \raggedright \ifdef{\dateenglish}{End --- }{}Einde~: \@tend + } + } + (3.3,11.5) node[anchor=north west] { + \parbox{14cm}{ + \fontfamily{phv}\fontsize{12}{21}\fontseries{m}\fontshape{n}\selectfont + \raggedright \ifdef{\dateenglish}{Room --- }{}Lokaal: \@rooms + + } + } + (2,9.5) node[anchor=north west] { + \parbox{19cm}{ + \fontfamily{phv}\fontsize{10}{13}\fontseries{m}\fontshape{n}\selectfont + \ifdef{\dateenglish}{\raggedright Extra information: read the back of this page\\}{} + \raggedright Extra informatie: zie achterkant + } + } + (3,27.7) node[anchor=north west] { + \includegraphics[width=7cm]{\@logo} + }; + \end{tikzpicture} + }; + \end{tikzpicture} + } + } + \vspace*{15cm} + \clearpage + \@extrainfo + \clearpage +} +%</ex> +% \end{macrocode} +% \end{macro} +% +% +% \subsection{Auxiliary functions to typeset exams} +% +% \begin{macro}{\question} +% Add a small box with the weight of the question on the current line +% (right aligned). +% +% \begin{macrocode} +%<*ex> +\newcounter{question} +\setcounter{question}{0} +\renewcommand\thequestion{\@arabic\c@question} +\newcommand{\question}[1]{ + \stepcounter{question} + \thequestion.~#1% +} +%</ex> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\questionweight} +% Add a small box with the weight of the question on the current line +% (right aligned). +% +% \begin{macrocode} +%<*ex> +\newcommand{\questionweight}[1]{% + \hspace{\fill} + \begin{tabular}{|c|} + \hline + \small \weightname: #1\\ + \hline + \end{tabular}\\ +} +%</ex> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\engdut} +% typesets the question in two columns, the left column taking the +% English variant of the question and the right column taking the +% Dutch variant. +% +% \begin{macrocode} +%<*ex> +\newcommand{\engdut}[2]{% + \begin{tabular}{cc}% + \selectlanguage{english}% + \begin{minipage}[t]{0.45\textwidth}% + #1 + \end{minipage}% + & + \selectlanguage{dutch}% + \begin{minipage}[t]{0.45\textwidth}% + #2 + \end{minipage}% + \end{tabular} + \selectlanguage{english}% +} +%</ex> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\mc} +% typesets a multiple choice answer candidate (monolingual, i.e. in a +% single column). +% +% \begin{macrocode} +%<*ex> +\newcommand{\mc}[1]{% + \qquad\begin{tabular}{cc} + $\square$ + & + \begin{minipage}[t]{0.8\textwidth}% + #1 + \end{minipage}% + \end{tabular}\\ +} +%</ex> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\engdutmc} +% typesets a multiple choice answer candidate in two columns, the left +% column taking the English variant of the question and the right +% column taking the Dutch variant. +% +% \begin{macrocode} +%<*ex> +\newcommand{\engdutmc}[2]{% + \begin{tabular}{cccc} + $\square$ + & + \selectlanguage{english}% + \begin{minipage}[t]{0.4\textwidth}% + #1 + \end{minipage}% + &---& + \selectlanguage{dutch}% + \begin{minipage}[t]{0.4\textwidth}% + #2 + \end{minipage}% + \end{tabular} + \selectlanguage{english}% +} +%</ex> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\insertsolutionspagepartial} +% fills the remainder of the page with 'fill-out' squares. +% as observing/controlling the current line position in \LaTeX{} is +% not easiy, one has to provide the number of centimeters below the +% bottom of the page, one wants to start the fill-out squares. +% +% \begin{macrocode} +%<*ex> +\newcommand\insertsolutionspagepartial[1]{ + \AddToShipoutPicture*{% + \put(0,0){% + \begin{tikzpicture} + \clip (0,0) rectangle (21,#1); +% \draw[densely dotted, step=0.5cm,black!20] (0.999,0.990) grid (20,1.5); + \draw[densely dotted, step=0.5cm,black!20] (0.999,1.499) grid (2,2.5); + \draw[densely dotted, step=0.5cm,black!20] (18.999,1.499) grid (20,2.5); + + \draw[densely dotted, step=0.5cm,black!20] (0.999,2.499) grid (20,27); + \draw[densely dotted, step=0.5cm,black!20] (0.999,27) grid (16,28); + \draw[densely dotted, step=0.5cm,black!20] (19.499,27) grid (20,28); + \draw[densely dotted, step=0.5cm,black!20] (0.99,27.999) grid + (20,28.5); + \draw[ultra thick] (1,#1) -- (20,#1); + \end{tikzpicture} + } + }% + \clearpage + \relax +} +%</ex> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\insertsolutionspage} +% inserts a full solutions page, i.e. flushes the current page and +% inserts a full page with 'fill-out' squares. +% The argument allows for specifying a watermark text (e.g. 'Scrap +% paper'). +% +% \begin{macrocode} +%<*ex> +\newcommand\insertsolutionspage[1]{ + \clearpage + \AddToShipoutPicture*{% + \put(0,0){% + \begin{tikzpicture} + \clip (0,0) rectangle (21,29.5); + \draw[densely dotted, step=0.5cm,black!20] (0.999,1.499) grid (2,2.5); + \draw[densely dotted, step=0.5cm,black!20] (18.999,1.499) grid (20,2.5); + + \draw[densely dotted, step=0.5cm,black!20] (0.999,2.499) grid (20,28); + \draw[densely dotted, step=0.5cm,black!20] (0.999,28) grid (16,28.5); + \draw[densely dotted, step=0.5cm,black!20] (19.499,28) grid (20,28.5); + \end{tikzpicture} + } + \put(120,150){\rotatebox{60}{\textcolor{watermark}{ + \fontfamily{phv}\fontsize{105}{130}\fontseries{m}\fontshape{n}\selectfont + #1} + } + } + }% + ~\relax +} +%</ex> +% \end{macrocode} +% \end{macro} +% +% We add a lastpage label to the final page +% \begin{macrocode} +%<*ex> +\AtEndDocument{ + \label{lastpage} +} +%</ex> +% \end{macrocode +% % \subsection{References} % \begin{macrocode} %<*ct|mt> |