diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/scientific-thesis-cover |
Initial commit
Diffstat (limited to 'macros/latex/contrib/scientific-thesis-cover')
-rw-r--r-- | macros/latex/contrib/scientific-thesis-cover/CHANGELOG.md | 64 | ||||
-rw-r--r-- | macros/latex/contrib/scientific-thesis-cover/README.md | 165 | ||||
-rw-r--r-- | macros/latex/contrib/scientific-thesis-cover/demo.pdf | bin | 0 -> 66355 bytes | |||
-rw-r--r-- | macros/latex/contrib/scientific-thesis-cover/demo.tex | 19 | ||||
-rwxr-xr-x | macros/latex/contrib/scientific-thesis-cover/release.bat | 11 | ||||
-rw-r--r-- | macros/latex/contrib/scientific-thesis-cover/scientific-thesis-cover.pdf | bin | 0 -> 139935 bytes | |||
-rw-r--r-- | macros/latex/contrib/scientific-thesis-cover/scientific-thesis-cover.sty | 393 |
7 files changed, 652 insertions, 0 deletions
diff --git a/macros/latex/contrib/scientific-thesis-cover/CHANGELOG.md b/macros/latex/contrib/scientific-thesis-cover/CHANGELOG.md new file mode 100644 index 0000000000..b1cb41f460 --- /dev/null +++ b/macros/latex/contrib/scientific-thesis-cover/CHANGELOG.md @@ -0,0 +1,64 @@ +# Changelog +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](http://keepachangelog.com/). +Since version 4.0.0, this project adheres to [Semantic Versioning](http://semver.org/). + +## [4.0.2] - 2018-06-03 + +## Fixed +- Also include `demo.tex` and `CHANGELOG.md` in CTAN upload. + +## [4.0.1] - 2018-06-03 + +### Fixed +- Fix `\USCCover@setLanguage` to have correct `{}` in the implementation. + +### Changed +- CTAN distributions contains `scientific-thesis-cover.pdf` instead of `README.md` to be consistent with other packages. + +## [4.0.0] - 2016-12-30 + +### Added + +- Added shorthand for sec institute. +- Added `demo.tex` which produces `demo.pdf` providing a short illustration. + +### Changed + +- Renamed repository from uni-stuttgart-cs-cover to scientific-thesis-cover to stress that the cover also can be used at other institutions. +- Numbers are now optional. +- Cover is sans serif again. + +### Removed + +- Removed `thesis.tex` as we recommend <https://github.com/latextemplates/scientific-thesis-template>. +- Removed "CR classification" as the [ACM Computing Classification System](https://en.wikipedia.org/wiki/ACM_Computing_Classification_System) from [1998](https://www.acm.org/about-acm/class/how-to-use) is superseeded by a very different system from [2012](https://www.acm.org/publications/class-2012). However, the 2012 classification is not required by the University of Stuttgart anymore. + +## [3.1] - 2016-05-29 + +### Added + +- Added README.md +- Added example thesis +- Added more types and courses +- Added support for two-column documents + +### Fixed + +- Fix typo at German "signature" + +### Changed + +- Versioning on GitHub +- Cover is typeset with serif font + +## 3.0 - 2012-11-20 + +Versioned outside of GitHub. + +[unreleased]: https://github.com/latextemplates/scientific-thesis-cover/compare/4.0.2...HEAD +[4.0.2]: https://github.com/latextemplates/scientific-thesis-cover/compare/4.0.1...4.0.2 +[4.0.1]: https://github.com/latextemplates/scientific-thesis-cover/compare/4.0.0...4.0.1 +[4.0.0]: https://github.com/latextemplates/scientific-thesis-cover/compare/3.1...4.0.0 +[3.1]: https://github.com/latextemplates/scientific-thesis-cover/compare/3.0...3.1 diff --git a/macros/latex/contrib/scientific-thesis-cover/README.md b/macros/latex/contrib/scientific-thesis-cover/README.md new file mode 100644 index 0000000000..e97074c4aa --- /dev/null +++ b/macros/latex/contrib/scientific-thesis-cover/README.md @@ -0,0 +1,165 @@ +# Cover page for scientific works [![Build Status](https://circleci.com/gh/latextemplates/scientific-thesis-cover/tree/master.svg?style=shield)](https://circleci.com/gh/latextemplates/scientific-thesis-cover/) [![CTAN](https://img.shields.io/badge/CTAN-scientific--thesis--cover-blue.svg?style=flat-square)](https://ctan.org/pkg/scientific-thesis-cover) + +Institutions require a cover page and an affirmation at the end of the thesis. +This package provides both. +It stems from the [computer science institutes of the University of Stuttgart], but is open to any university. + +In case you are looking for a **full thesis template** including a cover page and affirmation, please go to <https://latextemplates.github.io/scientific-thesis-template/>. +Please report issues concerning this package at the GitHub repository at <https://github.com/latextemplates/scientific-thesis-cover>. + +## Features + +- utf8 +- options for all required text on the coverpage + +## Installation + +Usually, one does not need a seperate installation step, because both MiKTeX and texlive come with a recent version of this template. +Do not forget to [keep your tex distribution updated](https://tex.stackexchange.com/q/55437/9075). + +Alternatively, you can download `scientific-thesis-cover.sty` and put it in the folder where you are going to use it. + +## Usage Example + +An example can be found in [demo.tex](demo.tex). + +## Usage + +Just include the package with all options specified: + + \usepackage[ + title={Super relevant evaluation of new blackhole-generation method}, + author={Max Musterjunge}, + type=bachelor, + institute=iaas, + course=cs, + examiner={Prof.\ Dr.\ Hans Mustermann}, + supervisor={Otto Normalverbraucher, M.Sc.}, + startdate={2012-06-01}, + enddate={2012-12-01}, + language=english + ]{scientific-thesis-cover} + +Afterwards you can create the cover using `\Coverpage` and get the affirmation text by using `\Affirmation` + +## Supported Options + +This package supports the following options: + +- language: Language used for all labels and text. + - `language=german` will use german (default) + - `language=english` will use english + +- title: Title of work. Should be placed in curly braces: + + - `title={My thesis title}` + - `title={My very long thesis title}` + +- author: Author of work. Should be placed in curly braces. May contain more than one author seperated by commas: + - `author={Peter Lustig}` + - `author={Peter Lustig, Franz Josef, Vladimir Sixth}` + +- type: Type of work. May be set to one of the following values or arbitrary text in curly braces: + - `type=bachelor` will label your work as Bachelor's Thesis. + Currently, the term regulations of the University of Stuttgart are in place. + It is assumed that you study a German Bachelor program. + Thus, even if you write in English, the type of your thesis is a "Bachelorarbeit". + In case you study in a different program (such as [INFOTECH]), please fill in the appropriate type of your thesis in curly brackets. + See below. + - `type=master` will label your work as Masters's Thesis + - `type=diplom` will label your work as Diploma Thesis + - `type=study` will label your work as Student Research Project + - `type=projectinf` will label your work as Projekt-INF + - Arbitrary strings are also possible: `type={research project}` will label your work as "research project" + +- institute: States for which institute you are doing this work. May be set to one of the following values or arbitrary text in curly braces: + - `institute=iaas` will state Institute of Architecture of Application Systems + - `institute=ipvs` will state Institute of Parallel and Distributed Systems + - `institute=fmi` will state Institute of Formal Methods in Computer Science + - `institute=iste` will state Institute of Software Technology + - `institute=iti` will state Institute of Computer Architecture and Computer Engineering + - `institute=iris` will state Institute of Computer-aided Product Development Systems + - `institute=vis` will state Institute of Visualization and Interactive Systems + - `institute=visus` will state Visualisation Research Center Stuttgart + - `institute=sec` will state Institute of Information Security + - `institute=fac` will state Faculty of Computer Science + - Arbitrary strings are possible: `institute={Custom fictional institute}` will state Custom fictional institute + +- course: Type of study. May be set to one of the following values or arbitrary text in curly braces: + - `course=cs` will state that your course of study is Computer Science + - `course=se` will state that your course of study is Software Engineering + - `course=mcl` will state that your course of study is Master Computational Linguistics + - `course=msv` will state that your course of study is Maschinelle Sprachverarbeitung + - `course=bis` will state that your course of study is Business Information Systems + - `course=simtech` will state that your course of study is Simulation Technology + - Arbitrary strings are possible: `course={New Study course}` will state that your course of study is New Study course + +- examiner: Your examiner. + - `examiner={Prof.\ Dr.\ Hans Mustermann}` + +- supervisor: Your supervisor. + - `supervisor={Otto Normalverbraucher, M.Sc.}` + +- startdate: Startdate of your work. + Preferably ISO-8601. See <https://xkcd.com/1179/> and <https://www.explainxkcd.com/wiki/index.php/1179:_ISO_8601>. + - `startdate={2012-06-01}` + +- enddate: Enddate of your work. + - `enddate={2012-12-01}` + +- crk: CR-Classification codes of your work. May be separated by commas: + - `crk={A.1, A.2}` + +## Additional Optional Options + +- number: Running number of work. May contain arbitrary text. Should contain the number you got for your work. + - `number=1234` will label your work to have number 1234 +- `setPageNumberToOne=true` will set the page after the cover to `1` (default false) +- `setCoverPageNumberToMinusOne=true` will set `-1` as the page number for the cover page (default false) + +## Known Problems + +Multiline/Commands in option values are currently only supported if you load `kvoptions-patch` **before** the documentclass definition like this: + + \RequirePackage{kvoptions-patch} + \documentclass[twoside]{article} + +## How to release + +1. Check if indent is correct: `latexindent -y="indentPreamble:1,defaultIndent:' '" -m -w scientific-thesis-cover.sty` +1. Adapt `CHANGELOG.md` +2. Adapt version and date in `scientific-thesis-cover.sty` +3. Tag the release commit using `git tag` +4. Push to GitHub +5. Add CHANGELOG part to GitHub release manually, because [github-release-from-changelog](https://github.com/MoOx/github-release-from-changelog) currently works with `package.json` only. +6. Publish to CTAN + - Pre-conditions: + - Windows: Patch `C:\MiKTeX\scripts\ctanify\ctanify`: Remove `-y` from `zip` command line arguments `zip -q -r -9 -y -m`. + - Windows: Environment variable `TMP` must not contain backslashes. E.g., `C:/TEMP/WIN` is good, `C:\Users\user\AppData\Local\Temp` is bad. + - Have `pandoc` and `sed` in the path. + - Run `release.bat`. + - Go to <https://ctan.org/pkg/scientific-thesis-cover>, choose "Upload" + - Use `scientific-thesis-cover.tar.gz` as archive. +7. Adapt `CHANGELOG.md` to contain `## [unreleased]` again. + +## License + +This work may be distributed and/or modified under the conditions of +the LaTeX Project Public License, version 1.3c of the license. +The latest version of this license is in <http://www.latex-project.org/lppl.txt> +and version 1.3c or later is part of all distributions of LaTeX +version 2005/12/01 or later. + +This work has the LPPL maintenance status "maintained". + +The Current Maintainer and author of this work is Oliver Kopp. + +This work consists of the files `scientific-thesis-cover.sty`, `demo.tex`, and `README.md`. +In case files are not listed here, but available at <https://github.com/latextemplates/scientific-thesis-cover>, these additional files also form part of this work. + +### Contributors (incomplete list) + +Bernd Raichle, Timo Heiber, Steffen Keul, Oliver Kopp, Kai Mindermann, Matthias Papesch, Nils Radtke, Niklas Schnelle + + [computer science institutes of the University of Stuttgart]: http://www.informatik.uni-stuttgart.de/index.en.html + [INFOTECH]: https://www.uni-stuttgart.de/infotech/ diff --git a/macros/latex/contrib/scientific-thesis-cover/demo.pdf b/macros/latex/contrib/scientific-thesis-cover/demo.pdf Binary files differnew file mode 100644 index 0000000000..63b173c689 --- /dev/null +++ b/macros/latex/contrib/scientific-thesis-cover/demo.pdf diff --git a/macros/latex/contrib/scientific-thesis-cover/demo.tex b/macros/latex/contrib/scientific-thesis-cover/demo.tex new file mode 100644 index 0000000000..12eefa007e --- /dev/null +++ b/macros/latex/contrib/scientific-thesis-cover/demo.tex @@ -0,0 +1,19 @@ +\documentclass[oneside]{article} +\usepackage[utf8]{inputenc} +\usepackage[ + title={Super relevant evaluation of new blackhole-generation method}, + author={Max Musterjunge}, + type=bachelor, + institute=iaas, + number=12345, + course=se, + examiner={Prof.\ Dr.\ Hans Mustermann}, + supervisor={Otto Normalverbraucher\ M.Sc.}, + startdate={2012-06-01}, + enddate={2012-12-01}, + language=english + ]{scientific-thesis-cover} +\begin{document} +\Coverpage +\Affirmation +\end{document}
\ No newline at end of file diff --git a/macros/latex/contrib/scientific-thesis-cover/release.bat b/macros/latex/contrib/scientific-thesis-cover/release.bat new file mode 100755 index 0000000000..34d8423140 --- /dev/null +++ b/macros/latex/contrib/scientific-thesis-cover/release.bat @@ -0,0 +1,11 @@ +@echo off
+
+rem Generate deml.pdf
+pdflatex demo
+
+rem Generate scientific-thesis-cover.pdf out of README.md
+copy README.md scientific-thesis-cover.md
+sed -i "s/.*svg.*//" scientific-thesis-cover.md
+pandoc -f markdown_github-hard_line_breaks -t latex scientific-thesis-cover.md -o scientific-thesis-cover.pdf
+
+ctanify --noauto --notds README.md CHANGELOG.md scientific-thesis-cover.sty scientific-thesis-cover.pdf demo.tex demo.pdf release.bat
diff --git a/macros/latex/contrib/scientific-thesis-cover/scientific-thesis-cover.pdf b/macros/latex/contrib/scientific-thesis-cover/scientific-thesis-cover.pdf Binary files differnew file mode 100644 index 0000000000..0e32b8f094 --- /dev/null +++ b/macros/latex/contrib/scientific-thesis-cover/scientific-thesis-cover.pdf diff --git a/macros/latex/contrib/scientific-thesis-cover/scientific-thesis-cover.sty b/macros/latex/contrib/scientific-thesis-cover/scientific-thesis-cover.sty new file mode 100644 index 0000000000..073701a521 --- /dev/null +++ b/macros/latex/contrib/scientific-thesis-cover/scientific-thesis-cover.sty @@ -0,0 +1,393 @@ +\NeedsTeXFormat{LaTeX2e} +\newcommand{\USCCover@Pgkname}{scientific-thesis-cover} +\ProvidesPackage{\USCCover@Pgkname}[2018/06/03 Cover and affirmation for scientific works.] +\typeout{Package: `\USCCover@Pgkname' v4.0.2} +% ------------------------------ +% required packages +% ------------------------------ +% kvoptions for key value options support +\RequirePackage{kvoptions} +\RequirePackage{ifthen} +%\RequirePackage{ifluatex} + +% this package requires utf8 inputenc +\def\USCCover@utf8warning{\PackageWarningNoLine{\USCCover@Pgkname} + {This package requires UTF-8 support.\MessageBreak + If at pdflatex, load `inputenc' or `inputenx' with the `utf8' option}% +} + +\newif\ifinputencloaded + +\@ifpackageloaded{inputenx} +{\def\USCCover@tempa{inputenx}\inputencloadedtrue} +{\@ifpackageloaded{inputenc}{\def\USCCover@tempa{inputenc}\inputencloadedtrue}{\inputencloadedfalse}} +\ifinputencloaded + \@ifpackagewith{\USCCover@tempa}{utf8}{}{\USCCover@utf8warning} + %We also drop utf8x, as we believe that this is obsolete - see http://tex.stackexchange.com/questions/13067/utf8x-vs-utf8-inputenc + \@ifpackagewith{\USCCover@tempa}{utf8x}{\USCCover@utf8warning}{} +\else + \ifluatex + %no warning required + \else + \USCCover@utf8warning + \fi +\fi + +% ------------------------------ +% options +% ------------------------------ +\SetupKeyvalOptions{ + family=MCS, + prefix=MCS@ +} + +% for possible option values see README.md +\DeclareStringOption[title not set]{title} % Title of the work +\DeclareStringOption[author not set]{author} +\DeclareStringOption[bachelor]{type} +\DeclareStringOption[fac]{institute} +\DeclareStringOption[]{number} % running number +\DeclareStringOption[cs]{course} +\DeclareStringOption[examiner not set]{examiner} +\DeclareStringOption[supervisor not set]{supervisor} +\DeclareStringOption[startdate not set]{startdate} +\DeclareStringOption[enddate not set]{enddate} +\DeclareStringOption[standard]{covertype} % type of the coverpage: standard, ustuttdiss + +\DeclareStringOption[german]{language} +\DeclareBoolOption[false]{setPageNumberToOne} +\DeclareBoolOption[false]{setCoverPageNumberToMinusOne} + +% ------------------------------ +% process options +% ------------------------------ +\ProcessKeyvalOptions* + +% ------------------------------ +% define language specific labels: +% ------------------------------ +% - labels are defined separate for each language +% - if language is not set, German is used +% ------------------------------ +\def\labelsenglish{ + \gdef\@labelExaminer{Examiner}% + %\gdef\@labelprueferin{Examiner}% + \gdef\@labelSupvervisor{Supervisor}% + %\gdef\@labelbetreuerin{Supervisor}% + \gdef\@labelCourse{Course of Study}% + \gdef\@labelStartdate{Commenced}% + \gdef\@labelEnddate{Completed}% + \gdef\@labelUniversity{~\newline University of Stuttgart}% + \gdef\@labelDept{Faculty of Computer Science}% + + %the labels are written in German, because these are the official terms given by the regulations ("Prüfungsordnung") + %For a detailed discussion see https://github.com/latextemplates/uni-stuttgart-computer-science-cover/pull/10 + \gdef\@labelTypeStudy{Studienarbeit}% + \gdef\@labelTypeDiplom{Diplomarbeit}% + \gdef\@labelTypeBachelor{Bachelorarbeit}% + \gdef\@labelTypeMaster{Masterarbeit}% + \gdef\@labelTypeProjectINF{Projekt-INF}% + \gdef\@labelTypeFachstudie{Fachstudie}% + \gdef\@labelTypeProzessanalyse{Prozessanalyse}% + + \gdef\@labelCourseCS{Informatik}% + \gdef\@labelCourseSE{Softwaretechnik}% + \gdef\@labelCourseMCL{Computerlinguistik}% + \gdef\@labelCourseTK{Technische Kybernetik}% + \gdef\@labelCourseMSV{Maschinelle Sprachverarbeitung}% + \gdef\@labelCourseBIS{Wirtschaftsinformatik}% + \gdef\@labelCourseSimTech{Simulation Technology}% + \gdef\@labelCourseMedInf{Medieninformatik}% + + % institute names + \gdef\@labeliaas{Institute of Architecture of Application Systems}% + \gdef\@labelipvs{Institute of Parallel and Distributed Systems}% + \gdef\@labelfmi{Institute of Formal Methods in Computer Science}% + \gdef\@labeliste{Institute of Software Technology}% + \gdef\@labeliti{Institute of Computer Architecture and Computer Engineering}% + \gdef\@labeliris{Institute of Computer-aided Product Development Systems}% + \gdef\@labelvis{Institute for Visualization and Interactive Systems}% + \gdef\@labelsec{Institute of Information Security}% + + \gdef\@labelAffirmation{Declaration}% + \gdef\@AffirmationText{I hereby declare that the work presented in this thesis is entirely my own and that + I did not use any other sources and references than the listed ones. + I have marked all direct or indirect statements from other sources contained therein as quotations. + Neither this work nor significant parts of it were part of another examination procedure. + I have not published this work in whole or in part before. + The electronic copy is consistent with all submitted copies. + } + \gdef\@labelSignature{\ place, date, signature} +} + +\def\labelsgerman{ + \gdef\@labelExaminer{Prüfer/in}% + \gdef\@labelSupvervisor{Betreuer/in}% + \gdef\@labelCourse{Studiengang}% + \gdef\@labelStartdate{Beginn am}% + \gdef\@labelEnddate{Beendet am}% + \gdef\@labelUniversity{~\newline Universität Stuttgart}% + \gdef\@labelDept{Fakultät Informatik, Elektrotechnik und Informationstechnik}% + + \gdef\@labelTypeStudy{Studienarbeit}% + \gdef\@labelTypeDiplom{Diplomarbeit}% + \gdef\@labelTypeBachelor{Bachelorarbeit}% + \gdef\@labelTypeMaster{Masterarbeit}% + \gdef\@labelTypeProjectINF{Projekt-INF}% + \gdef\@labelTypeFachstudie{Fachstudie}% + \gdef\@labelTypeProzessanalyse{Prozessanalyse}% + + \gdef\@labelCourseCS{Informatik}% + \gdef\@labelCourseSE{Softwaretechnik}% + \gdef\@labelCourseMCL{Computerlinguistik}% + \gdef\@labelCourseTK{Technische Kybernetik}% + \gdef\@labelCourseMSV{Maschinelle Sprachverarbeitung}% + \gdef\@labelCourseBIS{Wirtschaftsinformatik}% + \gdef\@labelCourseSimTech{Simulation Technology}% + \gdef\@labelCourseMedInf{Medieninformatik}% + + % institute names + \gdef\@labeliaas{Institut für Architektur von Anwendungssystemen}% + \gdef\@labelipvs{Institut für Parallele und Verteilte Systeme}% + \gdef\@labelfmi{Institut für Formale Methoden der Informatik}% + \gdef\@labeliste{Institut für Softwaretechnologie}% + \gdef\@labeliti{Institut für Technische Informatik}% + \gdef\@labeliris{Institut für Rechnergestützte Ingenieursysteme}% + \gdef\@labelvis{Institut für Visualisierung und Interaktive Systeme}% + \gdef\@labelsec{Institut für Informationssicherheit}% + + \gdef\@labelAffirmation{Erklärung}% + \gdef\@AffirmationText{% + Ich versichere, diese Arbeit selbstständig verfasst zu haben. + Ich habe keine anderen als die angegebenen Quellen benutzt und alle wörtlich oder sinngemäß aus anderen Werken übernommene Aussagen als solche gekennzeichnet. + Weder diese Arbeit noch wesentliche Teile daraus waren bisher Gegenstand eines anderen Prüfungsverfahrens. + Ich habe diese Arbeit bisher weder teilweise noch vollständig veröffentlicht. + Das elektronische Exemplar stimmt mit allen eingereichten Exemplaren überein. + } + \gdef\@labelSignature{\ Ort, Datum, Unterschrift} +} + +% set those labels according to the set language +\newcommand{\USCCover@setLanguage}{ + \def\0{english} + \ifx\MCS@language\0 + \labelsenglish + \else + \labelsgerman + \fi +} + +% set \@labelType if matched +\newcommand{\USCCover@setType}{ + \gdef\@labelType{\MCS@type} + \def\1{\MCS@type} + % dont remove last two braces / empty else clause + \def\0{diplom}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelType{\@labelTypeDiplom}}{} + \def\0{study}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelType{\@labelTypeStudy}}{} + \def\0{bachelor}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelType{\@labelTypeBachelor}}{} + \def\0{master}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelType{\@labelTypeMaster}}{} + \def\0{fachstudie}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelType{\@labelTypeFachstudie}}{} + \def\0{projectinf}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelType{\@labelTypeProjectINF}}{} +} + +% ------------------------------ +% Institute addresses +% ------------------------------ + +% general university address +\gdef\@labelAddress{\@labelUniversity\\Universitätsstraße 38\\D--70569 Stuttgart} + +\newcommand{\USCCover@setInstitute}{ + % use specified text if institute does not match + \gdef\@labelInstitute{\MCS@institute} + + \def\1{\MCS@institute} + % do not remove last two braces / empty else clause + \def\0{ipvs}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelInstitute{\@labelipvs\\\@labelAddress}}{} + \def\0{iaas}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelInstitute{\@labeliaas\\\@labelAddress}}{} + \def\0{fmi}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelInstitute{\@labelfmi\\\@labelAddress}}{} + \def\0{iste}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelInstitute{\@labeliste\\\@labelAddress}}{} + \def\0{iti}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelInstitute{\@labeliti\\\@labelUniversity\\Pfaffenwaldring 47\\D--70569 Stuttgart}}{} + \def\0{iris}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelInstitute{\@labeliris\\\@labelAddress}}{} + \def\0{vis}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelInstitute{\@labelvis\\\@labelAddress}}{} + \def\0{sec}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelInstitute{\@labelsec\\\@labelAddress}}{} + \def\0{fac}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelInstitute{\@labelDept\\\@labelAddress}}{} +} + +% ------------------------------ +% Evaluate course option and set course +% ------------------------------ +\newcommand{\USCCover@setCourse}{ + % use specified text if course does not match + \gdef\@labelCourseValue{\MCS@course} + + \def\1{\MCS@course} + % dont remove last two braces / empty else clause + \def\0{cs}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelCourseValue{\@labelCourseCS}}{} + \def\0{se}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelCourseValue{\@labelCourseSE}}{} + \def\0{mcl}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelCourseValue{\@labelCourseMCL}}{} + \def\0{msv}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelCourseValue{\@labelCourseMSV}}{} + \def\0{bis}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelCourseValue{\@labelCourseBIS}}{} + \def\0{simtech}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelCourseValue{\@labelCourseSimTech}}{} + \def\0{medinf}\ifthenelse{\equal{\0}{\1}}{\gdef\@labelCourseValue{\@labelCourseMedInf}}{} + +} + +% ------------------------------ +% evaluate options by calling those functions that set text accordingly +% ------------------------------ +\USCCover@setLanguage +\USCCover@setType +\USCCover@setInstitute +\USCCover@setCourse + +% ------------------------------ +% helping commands +% ------------------------------ +% - \USCCover@umrandet +% - \USCCover@TBlabel +% - \USCCover@TBlist +% ------------------------------ +\def\USCCover@umrandet{\global\let\@USCCover@umrandet=\fbox} +\let\@USCCover@umrandet\relax + +\newcommand{\USCCover@TBlabel}[1]{\textbf{#1}\hfil} + +\newenvironment{USCCover@TBlist}{% + \list{}{\labelwidth 45mm \leftmargin 70mm % alt: 35/60 mm + \rightmargin 20mm \let\makelabel\USCCover@TBlabel}% +}{\endlist} + +% ------------------------------ +% usable commands +% ------------------------------ +% - \Titelblatt +% - \Versicherung +% (contain code from old diplomtitel.sty) +% ------------------------------ +\newcommand{\Titelblatt}{% + \cleardoublepage + \ifthenelse{\boolean{MCS@setCoverPageNumberToMinusOne}}{\setcounter{page}{-1}}{} + \begingroup + \newcommand{\USCCover@isTwoColumn}{false} + \if@twocolumn \renewcommand{\USCCover@isTwoColumn}{true} \onecolumn \fi + \sffamily + \pagestyle{empty}% + \thispagestyle{empty}% + %\fontfamily{ppl}\selectfont + % + \@normalsize \@setsize\normalsize{13.6pt}\xipt\@xipt + % + \frenchspacing % besser, da viele Abk. (<- da ist schon eine) + \parskip=0pt\parindent=0pt\null + % + % Damit alles richtig funktioniert, mu"s der Ursprung auf die + % tats"achliche linke obere Ecke des Blattes gelegt werden (ohne den + % bekannten 1in Offset also). + % Ausserdem werden die beiden Seitenr"ander auf 28mm + 4.5mm Falz + % gesetzt, die Seitenh"ohe auf DIN A4-H"ohe. + % + \hsize=154mm %% DIN A4: 210mm - 2*28mm + \columnwidth=\hsize \linewidth=\hsize + % + \dimen0=0pt + \advance\dimen0-\oddsidemargin + \advance\dimen0 2.6mm %% + \advance\dimen0 4.5mm %% + \hbox to 0pt{\kern\dimen0\vbox to\topskip{% + \dimen0=-1in + \advance\dimen0-\topmargin + \advance\dimen0-\headheight + \advance\dimen0-\headsep + \vskip\dimen0\relax + % + + \vskip 20mm\relax %%% + + \vbox to 70mm{ + \begin{center}% + \@labelInstitute + \end{center} + \vfill}% + + \vskip -4mm\relax + %%%%% ==> 155mm (Titel: 165mm/Autor: 195mm) von oben + %%% Die Box kann max. 100mm breit und 60mmm hoch sein, + %%% au"serdem wird noch ein Rand von mind. 2.5mm gelassen + %%% Even if \centering is not recommended (see l2tabu or nag package), just replacing it with {\centering{...}} doesn't work as \centering doesn't center on the complete page + \centerline{\fboxsep=0pt + \@USCCover@umrandet{\hbox to 100mm{\hfil + \vbox to 60mm{\hsize=95mm\parindent=0pt + \vskip 10mm plus 30mm minus 7.5mm + \begin{center}\@setsize\large{14pt}\xiipt\@xiipt %%\large + \ifx\MCS@number\empty + \@labelType + \else + \@labelType\ Nr.\,\MCS@number + \fi + \end{center}% + \vskip 12.5mm plus 12.5mm minus 10mm + \begin{center}\@setsize\LARGE{22pt}\xviipt\@xviipt %%\LARGE + \textbf{ \MCS@title} + \end{center}% + \vskip 10mm plus 10mm minus 7.5mm + \begin{center}\@setsize\large{14pt}\xiipt\@xiipt %%\large + \MCS@author + \end{center}% + \vskip 17.5mm plus 35mm minus 12.5mm}\hfil}}}% + \vskip 20mm %%%%% + + \vbox to 15mm{% + \begin{USCCover@TBlist}% + \item[\@labelCourse: ]\@labelCourseValue + \end{USCCover@TBlist}% + \vfill}% + \vbox to 45mm{% + \begin{USCCover@TBlist}% + \item[\@labelExaminer:]\MCS@examiner + \item[\@labelSupvervisor:]\MCS@supervisor + \end{USCCover@TBlist}% + \vfill}% + \vbox to 70mm{%%%%% ==> 85 mm von oben + \begin{USCCover@TBlist}% + \item[\@labelStartdate:]\MCS@startdate + \item[\@labelEnddate:]\MCS@enddate + \end{USCCover@TBlist}% + \vfill}% + + \vss}\hss}% + % + \thispagestyle{empty}% + \cleardoublepage % if twoside add a blank page after cover + % set counter to start at 1 after the clear(double)page + \ifthenelse{\boolean{MCS@setPageNumberToOne}}{\setcounter{page}{1}}{} + \newcommand{\USCCover@true}{true} + \ifthenelse{\equal{\USCCover@isTwoColumn}{\USCCover@true}}{\twocolumn}{} + \endgroup +} +\newcommand{\Coverpage}{\Titelblatt} + +\newcommand{\Versicherung}{ + \cleardoublepage + \newcommand{\USCCover@isTwoColumn}{false} + \if@twocolumn \renewcommand{\USCCover@isTwoColumn}{true} \onecolumn \fi + \null + \vskip 5cm\relax + \begin{center} + \begin{minipage}[t]{10cm} + \hbox{\textbf{\@labelAffirmation}}% + \vskip 1cm\relax + %\begin{flushleft}% + \@AffirmationText + %\end{flushleft}% + \vskip 4cm\relax + \hrulefill + \vskip .4\baselineskip + \hbox{\@labelSignature} + \end{minipage} + \end{center} + \clearpage + \newcommand{\USCCover@true}{true} + \ifthenelse{\equal{\USCCover@isTwoColumn}{\USCCover@true}}{\twocolumn}{} +} +\newcommand{\Affirmation}{\Versicherung} |