98 lines
2.7 KiB
TeX
98 lines
2.7 KiB
TeX
|
|
% Acronyms
|
|
% ========
|
|
% The argument appears in small caps.
|
|
\newcommand\acro[1]{\textsc{\lowercase{#1}}}
|
|
|
|
% Variables
|
|
% =========
|
|
\newcommand\widefiguremargin{-.22\textwidth}
|
|
\newcommand\widefigurewidth{.49\textwidth}
|
|
\newcommand\widefiguregap{.02\textwidth}
|
|
\newcommand\widefiguresum{1.4\textwidth}
|
|
|
|
% Fachschaft logo
|
|
% ===============
|
|
\newcommand*{\fslogo}{\raisebox{+1.25ex}{\includegraphics[height=6cm]{graphics/logo-fachschaft}}}
|
|
|
|
% Wide box
|
|
% ========
|
|
% Box that runs into both margins. To be used inside a floating environment like figure or table.
|
|
\newcommand\widebox[1]{
|
|
\hspace{\widefiguremargin}
|
|
\begin{minipage}{\widefiguresum}
|
|
#1
|
|
\end{minipage}
|
|
}
|
|
|
|
% Column rules
|
|
% ============
|
|
% Adds two rules each spanning approximately half of the available textwidth (as defined by \widefigurewidth).
|
|
\newcommand\colrules{
|
|
\rule{\widefigurewidth}{0.4pt}
|
|
\hspace{\widefiguregap}
|
|
\rule{\widefigurewidth}{0.4pt}
|
|
}
|
|
|
|
% Simple code examples
|
|
% ====================
|
|
% Box for example code next to the rendered example.
|
|
%
|
|
% Arguments:
|
|
% 1. Label.
|
|
% 2. Content path without extension. If a corresponding PDF file exists, it gets included as an image. Otherwise, the LaTeX code gets rendered directly.
|
|
% 3. Caption.
|
|
\newcommand\example[3]{
|
|
\Example{#1}{#2}{#2}{#3}
|
|
}
|
|
|
|
% Extended code examples
|
|
% ======================
|
|
% Box for example code next to the rendered example.
|
|
% Depending on the third argument, the source path for the right-side rendering can differ from the source path of the left-side listing.
|
|
% Useful if only an excerpt of the document to be rendered affects the entire output.
|
|
%
|
|
% Arguments:
|
|
% 1. Label.
|
|
% 2. Content path without extension. If a corresponding PDF file exists, it gets included as an image. Otherwise, the LaTeX code gets rendered directly.
|
|
% 3. Alternative path for Rendering (c.f. 2.)
|
|
% 4. Caption.
|
|
\newcommand\Example[4]{
|
|
\begin{figure}[htp]
|
|
\widebox{
|
|
% Top rules:
|
|
\colrules
|
|
% Left content: code listing:
|
|
\begin{subfigure}{\widefigurewidth}
|
|
\inputminted[breaklines]{tex}{listings/#2.tex}
|
|
\end{subfigure}
|
|
\hspace{\widefiguregap}
|
|
% Right content: image or rendered example:
|
|
\begin{subfigure}{\widefigurewidth}
|
|
\IfFileExists{listings/#3.pdf}{
|
|
\includegraphics[width=\linewidth]{listings/#3.pdf}
|
|
}{
|
|
\medskip
|
|
\input{listings/#3}
|
|
\medskip
|
|
}
|
|
\end{subfigure}
|
|
% Bottom rules:
|
|
\colrules
|
|
% Left caption:
|
|
\begin{subfigure}[t]{\widefigurewidth}
|
|
\caption{\LaTeX-Code}
|
|
\label{#1-code}
|
|
\end{subfigure}
|
|
\hspace{\widefiguregap}
|
|
% Right caption:
|
|
\begin{subfigure}[t]{\widefigurewidth}
|
|
\caption{Ergebnis}
|
|
\label{#1-result}
|
|
\end{subfigure}
|
|
}
|
|
% General caption:
|
|
\caption{#4}
|
|
\label{#1}
|
|
\end{figure}
|
|
} |