Die Größe des Tikz-Bilds im Beamerposter konnte nicht richtig eingestellt werden

Die Größe des Tikz-Bilds im Beamerposter konnte nicht richtig eingestellt werden

Ich habe versucht, ein unten bereitgestelltes TikZ-Bild in ein Beamerposter-Dokument einzufügen. Normales Bild

Es wird durch den folgenden Code generiert (mit Ausnahme des Pfeils in der Mitte des „einfallenden Strahls“, das ist ein übermäßiges Detail):

\begin{tikzpicture}
    % axes and origin
    \coordinate (O) at (0, 0);
    \draw node[anchor=north east] {$O$};
    \draw [->] (-3,0)--(3,0) node [pos=0.98, below] {$x$};
    \draw [->] (0,-1)--(0,3) node [pos=0.98, left] {$z$};
    % orts
    \draw [thick, ->] (O)--(1,0) node[pos=1, below] {$\vc e_x$};
    \draw [thick, ->] (O)--(0,1) node[pos=1, left] {$\vc e_z$};
    % vector k and its angle chi
    \coordinate (K) at ({2.6*sin(30)},{2.6*cos(30)});
    \draw [thick, ->] (O)--(K) node[pos=1, right] {$\vc k$};
    \draw ([shift=(60:0.5)] O) arc (60:90:0.5) node[pos=0.35, above] {$\chi$};
    % k projections
    \coordinate (Kx) at (K |- O);
    \coordinate (Kz) at (K -| O);
    \draw [thick, ->](O)--(Kx) node[pos=1.15, below] {$\vc k_x$};
    \draw [thick, ->](O)--(Kz) node[pos=1, left] {$\vc k_z$};
    \draw [dashed] (K)--(Kz);
    \draw [dashed] (K)--(Kx);
    % foton beam
    \draw (-3, 2)--(O) node[pos=0.45, above] {$\ \hbar \omega$};
\end{tikzpicture}

Wenn ich diesen Code irgendwo im Beamerposter-Dokument einfüge (entweder innerhalb \begin{block}...\end{block}oder direkt innerhalb des Rahmens), erhalte ich dieses hässliche Ergebnis (das Bild erstreckt sich über die gesamte Posterbreite): Bildbeschreibung hier eingeben

MWE

\documentclass[final, 24pt]{beamer}\usetheme{Frankfurt}\usecolortheme{orchid}\usefonttheme[onlymath]{serif}\mode<presentation>
\usepackage[orientation=portrait,size=a0,scale=1.4,debug]{beamerposter}
\usepackage[utf8]{inputenc}
\usepackage[T2A]{fontenc}
\usepackage[english, russian]{babel}
\usepackage{tikz}

\newcommand{\vc}[1]{\mathbf {#1}}
\begin{document}
    \begin{frame}{}
        \begin{center}
            \begin{tikzpicture} 
                 % ... picture code given above
            \end{tikzpicture}
        \end{center}
    \end{frame}
\end{document}

Wie mache ich das Aussehen akzeptabel? Skalierung mittels

\scalebox{2.2}{
    \begin{tikzpicture}[scale=3] 
          % picture code
    \end{tikzpicture}
}

erzeugt diese Ausgabe (überspannt auch die gesamte Papierbreite) Bildbeschreibung hier eingeben

\draw[..., line width=0.33ex]Dann kann ich einige Anpassungen an beispielsweise Linienbreiten manuell vornehmen, um ein vernünftiges Ergebnis zu erhalten:Bildbeschreibung hier eingeben

Ich möchte die Community fragen, ob es eine andere Möglichkeit gibt, das gewünschte Ergebnis zu erzielen (vielleicht ist es ein weithin bekanntes Problem, aber ich habe es nicht geschafft, direkt danach zu googeln) und warum das direkte „Portieren“ von schönem Bildcode aus einem A4-Dokument solchen Müll produziert?

Antwort1

Willkommen bei TeX-SE! Sie können den Stilen every pathund einige Anweisungen hinzufügen every node. Hier ist ein Beispiel.

   \documentclass[final, 24pt]{beamer}\usetheme{Frankfurt}\usecolortheme{orchid}\usefonttheme[onlymath]{serif}\mode<presentation>
\usepackage[orientation=portrait,size=a0,scale=1.4,debug]{beamerposter}
\usepackage[utf8]{inputenc}
\usepackage[T2A]{fontenc}
\usepackage[english, russian]{babel}
\usepackage{tikz}

\newcommand{\vc}[1]{\mathbf {#1}}
\begin{document}
    \begin{frame}{}
        \begin{center}
         \begin{tikzpicture}[scale=12,every path/.append style={
         line width=4*\pgflinewidth},every node/.append style={scale=0.2,transform
         shape}]
             % axes and origin
             \coordinate (O) at (0, 0);
             \draw node[anchor=north east] {$O$};
             \draw [->] (-3,0)--(3,0) node [pos=0.98, below] {$x$};
             \draw [->] (0,-1)--(0,3) node [pos=0.98, left] {$z$};
             % orts
             \begin{scope}[thick]
             \draw [->] (O)--(1,0) node[pos=1, below] {$\vc e_x$};
             \draw [->] (O)--(0,1) node[pos=1, left] {$\vc e_z$};
             % vector k and its angle chi
             \coordinate (K) at ({2.6*sin(30)},{2.6*cos(30)});
             \draw [thick, ->] (O)--(K) node[pos=1, right] {$\vc k$};
             \end{scope}
             \draw ([shift=(60:0.5)] O) arc (60:90:0.5) node[pos=0.35, above] {$\chi$};
             % k projections
             \coordinate (Kx) at (K |- O);
             \coordinate (Kz) at (K -| O);
             \begin{scope}[thick]
             \draw [->](O)--(Kx) node[pos=1.15, below] {$\vc k_x$};
             \draw [->](O)--(Kz) node[pos=1, left] {$\vc k_z$};
             \end{scope}
             \draw [dashed] (K)--(Kz);
             \draw [dashed] (K)--(Kx);
             % foton beam
             \draw (-3, 2)--(O) node[pos=0.45, above] {$\ \hbar \omega$};
         \end{tikzpicture}
        \end{center}
    \end{frame}
\end{document}

Bildbeschreibung hier eingeben

Ich weiß natürlich nicht, was Dir am besten gefällt, aber Du kannst die Skalierungen Deinen Bedürfnissen anpassen.

BEARBEITEN: Die Pfeile wurden repariert. Wegen der Art und Weise, wie TikZ analysiert die Pfade. Die wohl einfachste Möglichkeit besteht darin, die Linienbreite über Bereiche festzulegen.

verwandte Informationen