I have a lot of small tikz graphics that I all want to scale down, so I'd like to put them in a scope, like this:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{scope}[scale=0.3]
\begin{tikzpicture}
% Draw stuff in a small scale
\end{tikzpicture}
\begin{tikzpicture}
% Draw more stuff in a small scale
\end{tikzpicture}
\end{scope}
\begin{tikzpicture}
% Draw stuff in normal scale again
\end{tikzpicture}
\end{document}
But this doesn't work because the scope environment is only defined inside a tikzpicture.
How can I achieve this effect? Do I have to use \tikzset
and save the current scale before scaling down and restoring it again at the end or is there a "proper" way of doing this?
Best Answer
We can use
\tikzset{every picture/.style={scale=0.3}}
for this purpose. I enclose an example and a page preview of it where scaling is applied from 0.1 to 1.2 with a step of 0.1 to demonstrate its use.I enclose one similar example where a TeX group (braces or
\begingroup
and\endgroup
) is used to limit the\tikzset
command. The first and the last pictures are without change, the second and the third one are affected by the\tikzset
command.