PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : beamer & pstricks: \psclip



Spindoctor
23-04-2008, 15:01
Hallo!

Ja, ich schon wieder mit einem Problem im Zusammenspiel mit pstricks und beamer.

Beim verwenden der Befehle \psclip und \only (der eine aus pstricks, der andere aus beamer), "hüpft" mein pstricks-Bild von Overlay zu Overlay nach rechts.

Ich hab auch ein Minimalbeispiel gemacht, bei dem dieses Problem auftritt. Allerdings ist es hier weit weniger massiv als in dem Dokument, wo das Problem ursprünglich aufgetreten ist.

Minimalbeispiel

\documentclass{beamer}

\usepackage[naustrian]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}

\usepackage{pstricks-add}

\hypersetup{pdfpagemode=FullScreen} % Start im Vollbild

\begin{document}

\frame{
\begin{pspicture}(0,0)(8,5)

\only<1>{
\psclip{\psframe[fillstyle=none,linestyle=solid,linecolor=yellow](1,1)(6,3)}
\psframe[fillstyle=solid,fillcolor=blue,linestyle=solid,fil lcolor=red](2,2)(7,6)
\endpsclip
}

\only<2>{
\psclip{\psframe[fillstyle=none,linestyle=solid,linecolor=yellow](1,1)(6,3)}
\psframe[fillstyle=solid,fillcolor=blue,linestyle=solid,fil lcolor=red](2,2)(7,6)
\endpsclip
}

\only<3>{
\psclip{\psframe[fillstyle=none,linestyle=solid,linecolor=yellow](1,1)(6,3)}
\psframe[fillstyle=solid,fillcolor=blue,linestyle=solid,fil lcolor=red](2,2)(7,6)
\endpsclip

}
\end{pspicture}
}
\end{document}

Eine kurze Erklärung: Laut Code besteht zwischen den Overlays überhaupt kein Unterschied, sie sind alle komplett ident. Dennoch fällt beim betrachten der fertigen Präsentation auf, dass das gesamte Bild in jedem Overlay ein Stück nach rechts springt.

In diesem Fall kann man das Problem umgehen, indem der \psclip-Befehl einmal für alle \psframes gesetzt wird (außerhalb des \only-Befehls) in meinem Dokument hat das leider nicht geholfen.

Was kann ich da dagegen machen?

Danke im Voraus!

Noch kurz was in eigener Sache:

Juhu, mein hundertster Beitrag!
Zeit, allen Forenteilnehmern/innen zu danken!
Dieses Forum hat mir schon sehr oft aus der Patsche geholfen!
Es sei mir zu Gute gehalten, dass nicht alle hundert Beiträge nur meine eigenen Probleme betroffen haben.

voss
23-04-2008, 15:22
Hallo!

Ja, ich schon wieder mit einem Problem im Zusammenspiel mit pstricks und beamer.

Beim verwenden der Befehle \psclip und \only (der eine aus pstricks, der andere aus beamer), "hüpft" mein pstricks-Bild von Overlay zu Overlay nach rechts.

Ich hab auch ein Minimalbeispiel gemacht, bei dem dieses Problem auftritt. Allerdings ist es hier weit weniger massiv als in dem Dokument, wo das Problem ursprünglich aufgetreten ist.

Minimalbeispiel

\documentclass{beamer}

\usepackage[naustrian]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}

\usepackage{pstricks-add}

\hypersetup{pdfpagemode=FullScreen} % Start im Vollbild

\begin{document}

\frame{
\begin{pspicture}(0,0)(8,5)
\only<1>{%
\psclip{\psframe[fillstyle=none,linestyle=solid,linecolor=yellow](1,1)(6,3)}
\psframe[fillstyle=solid,fillcolor=blue,linestyle=solid,fil lcolor=red](2,2)(7,6)
\endpsclip
}%
\only<2>{%
\psclip{\psframe[fillstyle=none,linestyle=solid,linecolor=yellow](1,1)(6,3)}
\psframe[fillstyle=solid,fillcolor=blue,linestyle=solid,fil lcolor=red](2,2)(7,6)
\endpsclip
}%
\only<3>{%
\psclip{\psframe[fillstyle=none,linestyle=solid,linecolor=yellow](1,1)(6,3)}
\psframe[fillstyle=solid,fillcolor=blue,linestyle=solid,fil lcolor=red](2,2)(7,6)
\endpsclip
}
\end{pspicture}
}
\end{document}

Eine kurze Erklärung: Laut Code besteht zwischen den Overlays überhaupt kein Unterschied, sie sind alle komplett ident. Dennoch fällt beim betrachten der fertigen Präsentation auf, dass das gesamte Bild in jedem Overlay ein Stück nach rechts springt.

In diesem Fall kann man das Problem umgehen, indem der \psclip-Befehl einmal für alle \psframes gesetzt wird (außerhalb des \only-Befehls) in meinem Dokument hat das leider nicht geholfen.

Was kann ich da dagegen machen?


Bei solchen Effekten handelt es sich immer um traling spaces, Leerzeichen ...
Es sind zwar nur die nach dem \only-Befehl wichtig, dennoch solltest du dir angewöhnen, sie in der obigen Form zu setzen.

Herbert

Spindoctor
23-04-2008, 18:57
das hat mein Problem gelöst!

Vielen Dank!

Jetzt verstehe ich, warum ich so oft %-Zeichen am Ende einer Zeile im Code von Experten/innen sehe.

Gehe ich richtig in der Annahme, dass sie immer dort gesetzt werden sollen, wo eine geschwungene Klammer (auf oder zu ist egal) eine Zeile beendet?

voss
23-04-2008, 19:19
Jetzt verstehe ich, warum ich so oft %-Zeichen am Ende einer Zeile im Code von Experten/innen sehe.

Gehe ich richtig in der Annahme, dass sie immer dort gesetzt werden sollen, wo eine geschwungene Klammer (auf oder zu ist egal) eine Zeile beendet?

Das hängt vom weiteren Verlauf des Makros ab. Aber in der Regel wird der
Zeilenwechsel, was für TeX gleichbedeutend mit einem Leerzeichen ist,
nicht verschluckt und bleibt erhalten. PSTricks dagegen versucht alles
an Leerzeichen, was inenrhalb einer pspicture-Umgebung auftaucht, zu
"verschlucken", so dass es dort selten auffällt. Ist man unsicher, dann immer

\test{%
ffooo}%

aber

\testA
{foo}

Hier wäre es egal, weil TeX weiß, dass \testA einen Parameter erwartet und daher
alle Leerzeichen bis {foo} beseitigt. Es schadet aber nur ganz selten, wenn man ein
% zuviel setzt. In der Regel ist es sinnvoll, Zeilen mit % abzuschließen.

Herbert

Spindoctor
24-04-2008, 00:16
Vielen Dank!

vci
24-04-2008, 14:51
Ah, sehr interessant, das wusste ich nämlich auch nicht und hatte ich bisher auch noch nicht gelesen warum das in einigen Quellcodes auftaucht ...

GNUPlot setzt beim Export zu "epslatex" auch diese % ...