aboutsummaryrefslogtreecommitdiff
path: root/latex
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fischer@muhq.space>2023-04-02 15:44:00 +0200
committerFlorian Fischer <florian.fischer@muhq.space>2023-04-02 15:44:00 +0200
commit3e0fcaf2bea7864235ec415895ecd7b788a1531c (patch)
tree2b46035962c688c4bd91fe5d2876eecd8e172f0f /latex
downloadunterricht-3e0fcaf2bea7864235ec415895ecd7b788a1531c.tar.gz
unterricht-3e0fcaf2bea7864235ec415895ecd7b788a1531c.zip
initial commit adding my latex build system
The two classes test and handout are provided. * test is for setting any kind of test * handout is for setting any handout sheet All markdown files in any subdirectory are converted to pdfs using pandoc. Found tex files are used to generate pdf files using rubber and can use the latex classes defined in the latex/ directory.
Diffstat (limited to 'latex')
-rw-r--r--latex/common.tex19
-rw-r--r--latex/common_options.tex12
-rw-r--r--latex/common_packages.tex10
-rw-r--r--latex/handout.cls20
-rw-r--r--latex/images/Kleeblatt.jpgbin0 -> 9914 bytes
-rw-r--r--latex/images/LogoHansSachs.pngbin0 -> 4016591 bytes
-rw-r--r--latex/packages.tex110
-rw-r--r--latex/test.cls136
8 files changed, 307 insertions, 0 deletions
diff --git a/latex/common.tex b/latex/common.tex
new file mode 100644
index 00000000..decebd24
--- /dev/null
+++ b/latex/common.tex
@@ -0,0 +1,19 @@
+\newcommand{\Signatur}{FIF}
+\newcommand{\Schule}{Hans-Sachs-Gymnasium Nürnberg}
+\newcommand{\LogoSchule}{images/logoHansSachs.png}
+
+\newtcolorbox{wiederholung}[1]{colback=orange!5!white,colframe=orange!75!black,fonttitle=\bfseries,title=Wiederholung: #1}
+
+\newcommand\kariert[2][0.5cm]{%
+ \begin{tikzpicture}[gray,step=#1]
+ \pgfmathtruncatemacro\anzahl{(\linewidth-\pgflinewidth)/#1} % maximale Anzahl Kästchen pro Zeile
+ \draw (0,0) rectangle (\anzahl*#1,#2*#1) (0,0) grid (\anzahl*#1,#2*#1);
+ \end{tikzpicture}
+}
+
+\newcommand{\liniert}[2][0.5cm]{%
+ \begin{tikzpicture}[gray]
+ \path[use as bounding box](0,0)rectangle(\linewidth,-#2*#1-0.5\pgflinewidth);
+ \foreach \n in {1,...,#2}\draw(0 ,-#1*\n )--(\linewidth,-#1*\n );
+ \end{tikzpicture}
+}
diff --git a/latex/common_options.tex b/latex/common_options.tex
new file mode 100644
index 00000000..0ef8b1cb
--- /dev/null
+++ b/latex/common_options.tex
@@ -0,0 +1,12 @@
+\RequirePackage{etoolbox}
+\newtoggle{lehrerversion}
+\DeclareOption{lehrerversion}{\toggletrue{lehrerversion}}
+
+\newtoggle{debug}
+\DeclareOption{debug}{\toggletrue{debug}}
+
+\ProcessOptions\relax
+
+\iftoggle{debug}{
+ \RequirePackage{showframe} % Seitenlayout anzeigen
+}{}
diff --git a/latex/common_packages.tex b/latex/common_packages.tex
new file mode 100644
index 00000000..e3e0cf94
--- /dev/null
+++ b/latex/common_packages.tex
@@ -0,0 +1,10 @@
+\RequirePackage{geometry}
+\RequirePackage[utf8]{inputenc}
+\RequirePackage{amssymb,amsthm,amsmath}
+\RequirePackage{ifthen}
+\RequirePackage{graphicx}
+\RequirePackage{tikz}
+\RequirePackage{multicol}
+\RequirePackage[most]{tcolorbox}
+\RequirePackage{xcolor}
+\RequirePackage{lmodern}
diff --git a/latex/handout.cls b/latex/handout.cls
new file mode 100644
index 00000000..5943769a
--- /dev/null
+++ b/latex/handout.cls
@@ -0,0 +1,20 @@
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{handout}[muhq's simple handout class]
+
+\LoadClass{scrartcl}
+
+\input{common_packages.tex}
+\input{common_options.tex}
+\input{common.tex}
+
+\geometry{a4paper,margin=1cm,nohead}
+
+\newcommand{\solution}[1]{
+ \iftoggle{lehrerversion}{
+ #1
+ }{
+ \phantom{#1}
+ }
+}
+
+\newcommand{\gap}[1]{\underline{\solution{#1}}}
diff --git a/latex/images/Kleeblatt.jpg b/latex/images/Kleeblatt.jpg
new file mode 100644
index 00000000..3a5423b2
--- /dev/null
+++ b/latex/images/Kleeblatt.jpg
Binary files differ
diff --git a/latex/images/LogoHansSachs.png b/latex/images/LogoHansSachs.png
new file mode 100644
index 00000000..82e4dc43
--- /dev/null
+++ b/latex/images/LogoHansSachs.png
Binary files differ
diff --git a/latex/packages.tex b/latex/packages.tex
new file mode 100644
index 00000000..649d3fdc
--- /dev/null
+++ b/latex/packages.tex
@@ -0,0 +1,110 @@
+\renewcommand{\baselinestretch}{1,5}
+
+\usepackage{geometry}
+\geometry{a4paper, top=35mm, left=20mm, right=35mm, bottom=25mm,
+headsep=15mm, footskip=10mm}
+
+\usepackage{floatflt}
+\usepackage{footnote}
+\usepackage{amsthm}
+\usepackage{float}
+\usepackage[utf8]{inputenc}
+\usepackage[ngerman]{babel}
+\usepackage{underscore}
+\usepackage{amssymb,amsmath}
+\usepackage{comment}
+\usepackage{ifthen}
+\usepackage{graphicx}
+\newcommand{\Verteilung}{}
+
+\newtheoremstyle{Aufg}% name of the style to be used
+{2pt}% measure of space to leave above the theorem. E.g.: 3pt
+{}% measure of space to leave below the theorem. E.g.: 3pt
+{}% name of font to use in the body of the theorem
+{}% measure of space to indent
+{}% name of head font
+{}% punctuation between head and body
+{\newline }% space after theorem head; " " = normal interword space
+{\textbf{\thmname{#1}\thmnumber{ #2}\thmnote{ (#3)}: \ \Verteilung \hfill {/}\AnzahlPunkte \ BE}}
+
+\theoremstyle{Aufg}
+\newtheorem{Aufg}{Aufgabe}
+
+\newtheoremstyle{Lsg}% name of the style to be used
+{2pt}% measure of space to leave above the theorem. E.g.: 3pt
+{}% measure of space to leave below the theorem. E.g.: 3pt
+{}% name of font to use in the body of the theorem
+{}% measure of space to indent
+{}% name of head font
+{}% punctuation between head and body
+{\newline }% space after theorem head; " " = normal interword space
+{\textbf{\thmname{#1}\thmnote{ (#3)}: }}
+
+
+
+\theoremstyle{Lsg}
+\newtheorem{Lsg}{Lösung}
+
+\newtheoremstyle{Bearbeitung}% name of the style to be used
+{0pt}% measure of space to leave above the theorem. E.g.: 3pt
+{25pt}% measure of space to leave below the theorem. E.g.: 3pt
+{}% name of font to use in the body of the theorem
+{}% measure of space to indent
+{}% name of head font
+{}% punctuation between head and body
+{ }% space after theorem head; " " = normal interword space
+{\thmname{#1} }
+
+\theoremstyle{Bearbeitung}
+\newtheorem{Bearbeitung}{}
+
+
+\newcommand{\centeredgraphics}[2][]{\[\includegraphics[#1]{images/#2}\]}
+\newcommand{\Ende}{ \ifdefined\PlatzKnapp \makebox(100,25)[c]{} \else \vspace*{\fill} \fi
+%\makebox(100,50)[c]{}
+\centeredgraphics[height=2.5cm]{Kleeblatt.jpg}
+\centerline{\textbf{Viel Erfolg!}} \newline}
+
+\newcommand{\AnzahlPunkte}{X} %%Anzahl der Punkte festlegen
+
+
+
+\makeindex
+\usepackage{setspace}
+
+%\usepackage{showframe} % Seitenlayout anzeigen
+
+\usepackage{fancyhdr}
+\pagestyle{fancy}
+\setlength{\headheight}{25 pt}
+\fancyhf{}
+\fancyhead[L]{\Schule}
+\fancyhead[R]{\HeaderText}
+
+
+
+\fancypagestyle{ErsteSeite}{%
+ \fancyhf{}%
+ \fancyhead[L]{\ifdefined\KeinLogo \else \includegraphics[width=0.3\textwidth]{\LogoSchule} \newline \fi \Schule}
+ \fancyhead[R]{\Large Name: \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
+
+}
+
+
+\usepackage{tikz}
+\newcommand\kariert[2][0.5cm]{%
+ \begin{tikzpicture}[gray,step=#1]
+ \pgfmathtruncatemacro\anzahl{(\linewidth-\pgflinewidth)/#1} % maximale Anzahl Kästchen pro Zeile
+ \draw (0,0) rectangle (\anzahl*#1,#2*#1) (0,0) grid (\anzahl*#1,#2*#1);
+ \end{tikzpicture}
+}
+
+\newcommand{\liniert}[2][0.5cm]{%
+ \begin{tikzpicture}[gray]
+ \path[use as bounding box](0,0)rectangle(\linewidth,-#2*#1-0.5\pgflinewidth);
+ \foreach \n in {1,...,#2}\draw(0 ,-#1*\n )--(\linewidth,-#1*\n );
+ \end{tikzpicture}}
+
+\newcommand{\Lehrerversion}{\excludecomment{Bearbeitung}}
+
+\newcommand{\Schuelerversion}{\excludecomment{Lsg}}
diff --git a/latex/test.cls b/latex/test.cls
new file mode 100644
index 00000000..64fdf54e
--- /dev/null
+++ b/latex/test.cls
@@ -0,0 +1,136 @@
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{test}[muhq's test class]
+
+\renewcommand{\baselinestretch}{1,5}
+
+\LoadClass[a4paper,12pt]{scrartcl}
+
+\RequirePackage{floatflt}
+\RequirePackage{footnote}
+\RequirePackage{float}
+\RequirePackage[ngerman]{babel}
+\RequirePackage{underscore}
+\RequirePackage{comment}
+
+\input{common_packages.tex}
+\input{common_options.tex}
+\input{common.tex}
+
+\geometry{a4paper, top=35mm, left=20mm, right=35mm, bottom=25mm, headsep=15mm, footskip=10mm}
+
+\newcommand{\Verteilung}{}
+\newcommand{\AnzahlPunkte}{0} %%Anzahl der Punkte festlegen
+
+\newcommand{\Datum}{\today}
+\newcommand{\Klasse}{TODO}
+\newcommand{\TestNummer}{1}
+\newcommand{\TestArt}{Schulaufgabe}
+\newcommand{\Fach}{Mathemathik}
+\newcommand{\HeaderText}{\TestArt{} aus der \Fach}
+%\newcommand{\KeinLogo}{} %%FALLS Kein Logo erwünscht
+\newcommand{\EinleitungsSatz}{Achte auf eine korrekte Schreibweise und eine ordentliche äußere Form!}
+
+\definecolor{testgrauRGB}{rgb}{0.9,0.9,0.9}
+\definecolor{testgrauCMYK}{cmyk}{0.0,0.0,0.0,0.30}
+
+\newcommand{\AnzahlInsgesamtPunkte}{TODO} %%Anzahl der zu erreichenden Punkte
+
+\newtheoremstyle{Aufg}% name of the style to be used
+{2pt}% measure of space to leave above the theorem. E.g.: 3pt
+{}% measure of space to leave below the theorem. E.g.: 3pt
+{}% name of font to use in the body of the theorem
+{}% measure of space to indent
+{}% name of head font
+{}% punctuation between head and body
+{\newline }% space after theorem head; " " = normal interword space
+{\textbf{\thmname{#1}\thmnumber{ #2}\thmnote{ (#3)}: \ \Verteilung \hfill {/}\AnzahlPunkte \ BE}}
+
+\theoremstyle{Aufg}
+\newtheorem{Aufg}{Aufgabe}
+
+\newtheoremstyle{Lsg}% name of the style to be used
+{2pt}% measure of space to leave above the theorem. E.g.: 3pt
+{}% measure of space to leave below the theorem. E.g.: 3pt
+{}% name of font to use in the body of the theorem
+{}% measure of space to indent
+{}% name of head font
+{}% punctuation between head and body
+{\newline }% space after theorem head; " " = normal interword space
+{\textbf{\thmname{#1}\thmnote{ (#3)}:}}
+
+\theoremstyle{Lsg}
+\newtheorem{Lsg}{Lösung}
+
+\newtheoremstyle{Bearbeitung}% name of the style to be used
+{0pt}% measure of space to leave above the theorem. E.g.: 3pt
+{25pt}% measure of space to leave below the theorem. E.g.: 3pt
+{}% name of font to use in the body of the theorem
+{}% measure of space to indent
+{}% name of head font
+{}% punctuation between head and body
+{ }% space after theorem head; " " = normal interword space
+{\thmname{#1}}
+
+\theoremstyle{Bearbeitung}
+\newtheorem{Bearbeitung}{}
+
+\newcommand{\Lehrerversion}{\excludecomment{Bearbeitung}}
+\newcommand{\Schuelerversion}{\excludecomment{Lsg}}
+
+\iftoggle{lehrerversion}{
+ \Lehrerversion
+}{
+ \Schuelerversion
+}
+
+\newcommand{\Intro}{
+ \fcolorbox{black}{testgrauRGB}{%
+ \parbox{14.3cm}{
+ \centerline{\Large \bfseries \TestNummer{}. \TestArt{} aus der Mathematik}
+ \medskip
+ \centerline{\bfseries Klasse \Klasse}
+ \centerline{\bfseries -- am \Datum \ --}
+ }
+ }
+ \medskip
+ \newline
+ \centerline{\EinleitungsSatz}
+}
+
+\newcommand{\centeredgraphics}[2][]{\[\includegraphics[#1]{images/#2}\]}
+\newcommand{\Ende}{
+ \ifdefined\PlatzKnapp \makebox(100,25)[c]{}
+ \else \vspace*{\fill}
+ \fi
+ %\makebox(100,50)[c]{}
+ \centeredgraphics[height=2.5cm]{Kleeblatt.jpg}
+ \centerline{\textbf{Viel Erfolg! \Signatur}}
+ \newline
+
+ \makebox(1,50)[c]{}
+
+ %%Erstellt Summenzeichen und Erreichte Punktzahl
+ \centerline{\Large \bfseries $\sum$ \ \ \ \ \ \ \ \ \ \ {/}\AnzahlInsgesamtPunkte \ BE}
+ \makebox(1,25)[c]{} \newline
+ \ifdefined\PlatzKnapp
+ \else
+ \makebox(100,100)[c]{}
+ \fi
+}
+
+\makeindex
+\RequirePackage{setspace}
+
+\RequirePackage{fancyhdr}
+\pagestyle{fancy}
+\setlength{\headheight}{25 pt}
+\fancyhf{}
+\fancyhead[L]{\Schule}
+\fancyhead[R]{\HeaderText}
+
+\fancypagestyle{ErsteSeite}{%
+ \fancyhf{}%
+ \fancyhead[L]{\ifdefined\KeinLogo \else \includegraphics[width=0.3\textwidth]{\LogoSchule} \newline \fi \Schule}
+ \fancyhead[R]{\Large Name: \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
+
+}