Ich habe ein Open in Online-Editor
\documentclass{beamer} \usepackage{tikz} \begin{document} \begin{frame} \begin{tikzpicture} \only<1>{\draw[blue,line width=2mm] (0,0) -- (3,0);} \only<2->{\draw[blue,line width=2mm,opacity=0.3] (0,0) -- (3,0);} \end{tikzpicture} \end{frame} \end{document} Ich möchte dies nun so gestalten, dass ich den Code nicht für jeden Slide kopieren und anpassen muss. Ausgehend von dieser Antwort auf tex.se habe ich dies wie folgt versucht: Open in Online-Editor
\documentclass{beamer} \usepackage{tikz} \begin{document} \begin{frame} \newcommand*{\myOpacity}{} \only<1>{\renewcommand*{\myOpacity}{opacity=1}} \only<2->{\renewcommand*{\myOpacity}{opacity=0.3}} \begin{tikzpicture} \draw[blue,line width=2mm,\myOpacity] (0,0) -- (3,0); \end{tikzpicture} \end{frame} \end{document} Dies führt zur Fehlermeldung
Wenn ich das ganze mit Farben, statt mit Opazität, mache, funktioniert es: Open in Online-Editor
\documentclass{beamer} \usepackage{tikz} \begin{document} \begin{frame} \newcommand*{\myColor}{} \only<1>{\renewcommand*{\myColor}{red}} \only<2->{\renewcommand*{\myColor}{blue}} \begin{tikzpicture} \draw[blue,line width=2mm,\myColor] (0,0) -- (3,0); \end{tikzpicture} \end{frame} \end{document} gefragt 18 Feb '16, 20:53 tom75 |
Ich habe von dieser TeX.SX-Antwort abgeschrieben, da sie sehr elegant ist. Man definiert dabei einen neuen TikZ-Key Open in Online-Editor
\tikzset{ onslide/.code args={<#1>#2}{% \only<#1>{\pgfkeysalso{#2}}% } } Dieser wird in den Optionen des Pfades verwendet und wendet diese Optionen nur auf der entsprechenden Folie an. Im Beispiel Open in Online-Editor
\documentclass{beamer} \usepackage{tikz} \tikzset{ onslide/.code args={<#1>#2}{% \only<#1>{\pgfkeysalso{#2}}% } } \begin{document} \begin{frame} \begin{tikzpicture} \draw[blue,line width=2mm,onslide=<1>{opacity=1},onslide=<2->{opacity=0.3}] (0,0) -- (3,0); \end{tikzpicture} \end{frame} \end{document} beantwortet 18 Feb '16, 21:02 Henri Vielen Dank. Das ist wesentlich eleganter.
(18 Feb '16, 21:39)
tom75
|
Mein Versuch war fehlerhaft. Es funktioniert so: Open in Online-Editor
\documentclass{beamer} \usepackage{tikz} \begin{document} \begin{frame} \newcommand*{\myOpacity}{} \only<1>{\renewcommand*{\myOpacity}{1}} \only<2->{\renewcommand*{\myOpacity}{0.3}} \begin{tikzpicture} \draw[blue,line width=2mm,opacity=\myOpacity] (0,0) -- (3,0); \end{tikzpicture} \end{frame} \end{document} beantwortet 18 Feb '16, 21:38 tom75 |