TikZ
TikZ (TikZ ist kein Zeichenprogramm) ist ein LaTeX-Paket, mit dem man sehr einfach qualitativ hochwertige Graphiken erstellen kann. Es wurde von Till Tantau, entwickelt, der auch das Paket beamer
entwickelt hat. TikZ eignet sich besonders gut für Präsentationen mit Beamer.
Ressourcen
- PGF and TikZ – Homepage des Projekts. Sehr lesenswert ist das PGF Manual, das im Paket enthalten ist.
- tikz.dev
- Inoffizielle HTML-Dokumentation mit vielen Beispielen
- tikz.org
- TeXample – eine Seite mit nützlichen Beispielen
Einfügen als externes Bild
Definition:
\newif\iffinal % introduce a switch for draft vs. final document
%\finaltrue % use this to compile the final document
% [more preamble that in my case also uses \iffinal for other stuff]
\pgfrealjobname{proposal} % <-- NOTE: this needs to be the real document's basename
% (else you'll only get an empty output file)
\iffinal
\newcommand{\inputTikZ}[1]{%
\input{#1.tikz}%
}
\else
\newcommand{\inputTikZ}[1]{%
\beginpgfgraphicnamed{#1-external}%
\input{#1.tikz}%
\endpgfgraphicnamed%
}
\fi
Bild einfügen das in figs/picture.tikz gespeichert ist:
\begin{figure}[t]
\centering
% like \input{...}, but adds caching via PGF's externalization feature:
\inputTikZ{figs/picture}
\caption{\label{fig:isoosi-model}ISO/OSI stack with the network model and the PCM scope.}
\end{figure}
Listings und TikZ
Mann kann auch Code-Listings mit dem Listings-Paket in TikZ-Grafiken einbinden. In früheren Versionen (bis TeXlive 2023) ging das z.B. innerhalb von einem Node mit \node {\lstinputlisting{test.java}};
. Seit TeXlive 2024 erzeugt das den Fehler Package tikz Error: Giving up on this path. Did you forget a semicolon?
. Man kann es lösen, indem man eine feste Textbreite für den Node angibt: \node[text width=5cm] {\lstinputlisting{test.java}};
Dieser Fehler betrifft auch Tabellen, falls man ein Listing in einer Tabellenspalte ohne definierte Breite (z.B. c
) eingefügt hat. Hier muß man die Tabellenspaltendefinition dann z.B. auf p{5cm}
ändern.
Literatur
- ↑ Stefan Kottwitz: LaTeX Graphics with TikZ: A Practitioner's guide to draw 2D and 3D images, diagrams, charts, and plots in LaTeX using TikZ. Birmingham, UK: Packt Publishing, 2023