Schrifttyp und Zeilenabstand in Block ändern

Neue Frage »

Wuselchen Auf diesen Beitrag antworten »
Schrifttyp und Zeilenabstand in Block ändern
Hallo mal wieder ^^

das nächste Problem befasst sich mit dem ändern eines Blocks. Es wird die vorgefertigte Beamerclass CambridgeUS verwendet.

\begin{frame}[allowframebreaks]\frametitle{Einführung}
\begin{block}\blocktitle{Was ist Kuh?}
\begin{itemize}
\item macht Milch
\item macht Muh
\end{itemize}
\end{block}

den blocktitle vor {Was ist Kuh?} habe ich eingefügt, weil er sonst mit der Änderung des Blocktitles nichts anfangen konnte und ich die Schriftfarbe ändern wollte. Es geht nicht ohne diese Ergänzung, wenn ich da explizite Änderungen am beamertheme vornehmen möchte, oder?

An dieser Stelle möchte ich noch folgendes ändern:
1. Der Abstand vom Blocktitel zum Inhalt soll größer sein, und zwar für jeden Block.
2. Die Schriftgröße von Blocktitel würd ich gern noch ändern und dann entweder fett oder unterstrichen.

Ist es möglich, den Zeilenabstand für alle Blöcke festzulegen?
Ich möchte dabei aber nur den Abstand von Titel zum Inhalt reduzieren, alle Abstände zu ändern hab ich schon geschafft, aber ist ja nicht mein Ziel, eine Aufzählung als Löcherkäse wiederzugeben. ^^

Lg

Wuselchen
Calvin Auf diesen Beitrag antworten »

Ändern der Schrift braucht keinen eigenen Befehl. Schau dir mal in der beameruserguide nach setbeamertemplate und setbeamerfont

Hier mal ein Beispiel, wie du die Schrift verändern könntest

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
\documentclass{beamer}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usetheme{CambridgeUS}
\setbeamercolor{item}{fg=gray}
\setbeamertemplate{block begin}[color=blue]
\setbeamerfont{block title}{size=\huge,series=\bfseries}
\begin{document} 
\begin{frame}[allowframebreaks]\frametitle{Einführung}
\begin{block}{Was ist Kuh?}%\blocktitle
\begin{itemize}
\item macht Milch
\item macht Muh
\end{itemize}
\end{block}
\end{frame}
\end{document}
Wuselchen Auf diesen Beitrag antworten »

Das klappt schonmal, super ^^

Allerdings bekomme ich die Sache mit den Abständen generell nicht hin:

- zum einen der Abstand vom block title zum block inhalt

\linespread {1.25}\selectfont <-- Funktioniert nicht
\renewcommand{\baselinestretch}{1.5} <-- auch nicht...


- zum anderen die Position aller Inhalte. Trotz...

\begin{frame}[t,allowframebreaks]

...fängt der block/item/column etc. immer auf verschiedenen Höhen an.


Liebe Grüße

Wuselchen


ps.: Bitte entschuldigt, dass ich hier das Forum etwas voll spam, aber es ist nicht einfach als absoluter Latex-Newbie eine vorgefertige Präsentation zu beherrschen -.-
Calvin Auf diesen Beitrag antworten »

Deine 7 Beiträge sind noch lang kein spammen Augenzwinkern Insofern noch alles in Ordnung.

Viel wichtiger ist ein voll kompilierfähiges Minimalbeispiel. Das kann man als Helfer komplett kopieren, kompilieren und sofort den "Fehler" sehen. Man muss sich nicht erst mühsam ein Gerüst drumrumbasteln, um hinterher festzustellen, dass man den Fehler nicht nachstellen kann, weil du irgendeine Zusatzoption gewählt hast. Schau dir dazu bitte mal [Tip] "Fehlersuche im LaTeX-Quellcode" oder "Wie erstelle ich ein Minimalbeispiel?" (besonders den letzten Abschnitt) an.

Das Problem mit Blöcken auf unterschiedlichen Höhen kann ich nicht nachvollziehen.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
\documentclass{beamer}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usetheme{CambridgeUS}
\setbeamercolor{item}{fg=gray}
\setbeamertemplate{block begin}[color=blue]
\setbeamerfont{block title}{size=\huge,series=\bfseries}
\begin{document} 
\begin{frame}[t,allowframebreaks]\frametitle{Einführung}
\begin{block}{Was ist Kuh?}
\begin{itemize}
\item macht Milch
\item macht Muh
\end{itemize}
\end{block}
\end{frame}

\begin{frame}[t,allowframebreaks]\frametitle{Einführung}
\begin{itemize}
\item eine Gurke
\end{itemize}
\end{frame}

\begin{frame}[t,allowframebreaks]\frametitle{Einführung}
Hier steht Blödsinn
\end{frame}
\end{document}


Bei der Sache mit den Abständen habe ich bislang noch nichts gefunden. Hat da noch jemand eine Idee?
Wuselchen Auf diesen Beitrag antworten »

Nochmal in konkret:

\documentclass{beamer}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usetheme{CambridgeUS}

\begin{document}
\begin{frame}[t]\frametitle{Einführung}
\begin{block}{Was ist Kuh?}
% ### hier hätte ich gerne Abstand vom Titel zum Blockinhalt ####
% ### es wäre auch super, wenn man den Abstand zwischen items erhöhen kann, ohne dabei den Abstand jeder Zeile zu erhöhen, z.b. bei Zeilenumbrüchen ###
\begin{itemize}
\item macht Milch
\item macht Muh... Hier steht eine supermegalange Muhkuh, die mit ziemlich großer Wahrscheinlichkeit bis in die nächste Zeile reicht mit ihrer Kuhschnauze!
\end{itemize}
\end{block}
% ### auch hier bräuchte ich Abstand zur nächsten Zeile gibt ##
{\bf Hinweis}: muhmuh
\end{frame}
\end{document}


Das Programm scheint extrem stur zu sein, was Abständsänderungen in vorgefertigten frame- oder block klassen betrifft, kann das sein?


Lg

Wuselchen
Stefan_K Auf diesen Beitrag antworten »

Hallo Wuselchen!

Du könntest z.B. einfach \bigskip einfügen, oder beliebigen Abstand mit \vspace.

Viele Grüße,

Stefan
 
 
Wuselchen Auf diesen Beitrag antworten »

so.. ich habe herausgefunden, dass

\vspace{0.2cm}

an jeder Stelle klappt. Allerdings müsste ich das dann immer manuell für jede einzelne Zeile machen. Kann ich nicht den Abstand von Blocktitle zu Block oder von Item zu Item (in einer Aufzählung) irgendwie über \setbeamertemplate{block title}{...} oder \setbeamertemplate{itemize}{...} steuern?

Beträfe alles auch das o.g. Beispiel...
Wuselchen Auf diesen Beitrag antworten »

ups... sowas passiert, wenn man eine antwort erstellt und erst ne Stunde später denn doch mal den Senden-Knopf drückt ^^

Gibts so ne generelle Möglichkeit denn nicht?
Stefan_K Auf diesen Beitrag antworten »

Es gibt die Templates block begin und block end. Da könnte man eingreifen.
Doch ist Dir das die Mühe wert, statt ein paarmal \bigskip, \medskip oder \smallskip oder ein eigenes kurzes Makro einzufügen?

Stefan
Wuselchen Auf diesen Beitrag antworten »

Hallo Stefan,

naja, das Skript hat mehr als 220 Seiten und es sind zumindest eine Menge Aufzählungen (itemize) drin... Wenn ich also wenigstens die Abstände etwas vergrößern könnte, würde mir das sicherlich Arbeit ersparen.

Das nächste Problem ist grad aufgetaucht und klingt irgendwie läppisch:

Innerhalb eines Blockes ist die Textausrichtung linksbündig.. ich kann jetzt überall schön nachlesen, dass Latex standardmäßig Blocksatz verwendet und wie man es ändert in links, rechts, center... aber wie stell ich Blocksatz wieder her? Das ist wieder so eine Basiseinstellung für Blöcke, langsam nerven die Dinger -.-


Danke für eure Mühe

Lg

Wuselchen
Stefan_K Auf diesen Beitrag antworten »

Begrenze die Wirkung der Satz-Änderung durch Gruppieren mit geschweiften Klammern wie in {\raggedleft ...}, oder verwende die Umgebungen flushleft bzw. flushright.

Zur Not gibt es noch das Paket ragged2e und dessen Befehl \justifying, das stellt den Blocksatz wieder her.

Stefan
Wuselchen Auf diesen Beitrag antworten »

Hallo nochmal,

\justifying

habe ich ausprobiert, allerdings klappt das nicht so ganz


oder sowas in der art

Nochmal im Beispiel kommentiert, das nicht funktionierende hab ich auskommentiert.

\documentclass{beamer}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usetheme{CambridgeUS}
%\setbeamerfont{itemize}{series=\justifying} % <---- klappt nicht
%\setbeamerfont{itemize}{series=\vspace{1.5cm}} % <--- klappt auch nicht

\begin{document}
\begin{frame}[t]\frametitle{Einführung}
\begin{block}{Was ist Kuh?}

% ### ich möchte den Abstand zwischen den Punkten der Aufzählung erhöhen, ohne, dass bei einer langen Zeile der Abstand innerhalb eines Punktes erhöht wird... Außerdem an dieser Stelle Blocksatz, der rechte Rand sieht sonst so ausgefranst aus ###
%\begin{justifying} <---- klappt ebenfalls nicht
\begin{itemize}
\item macht Milch
\item macht Muh... Hier steht eine supermegalange Muhkuh, die mit ziemlich großer Wahrscheinlichkeit bis in die nächste Zeile reicht mit ihrer Kuhschnauze!
\end{itemize}
%\end{justifying} <--- s.o.
\end{block}
\end{frame}
\end{document}

Eine Frage noch: ist es eigentlich normal, dass man so arge Probleme mit der Formatierung in Latex hat? Und gibts vielleicht Lektüre, die genau mein Form von Problemen behandelt? Google spuckt mir ziemlich oft irgendwelche Fetisch-Seiten aus, "justify" und "latex" z.b. ging gar nicht! und "blocksatz" gabs halt nur, dass der standardmäßig ist, aber nicht, wie man ihn wiederherstellt ^^


Liebe Grüße

Wuselchen
Wuselchen Auf diesen Beitrag antworten »

\begin{block}{Def.: Das thermodynamische System}
\vspace{0.3cm}
\justifying
bli bla blubb muh muh
\end{block}


das klappt schonmal!!!
Stefan_K Auf diesen Beitrag antworten »

Hallo,

Zitat:
Original von Wuselchen
\justifying habe ich ausprobiert, allerdings klappt das nicht so ganz


Im obigen Beispiel kann \justifying nicht gehen, weil
code:
1:
\usepackage{ragged2e}

fehlt.

Wenn Du Blocksatz in items einer Liste möchtest, klappt das mit \justifying nach dem entsprechenden \item.

Zitat:
Original von Wuselchen
Eine Frage noch: ist es eigentlich normal, dass man so arge Probleme mit der Formatierung in Latex hat?


Das kommt drauf an, wie man arbeitet. Wenn man die standardmäßig bereitgestellten und bewährten Features verwendet, kann man problemfrei auskommen. LaTeX- und Paket-Dokumentationen, die oft Beispiele enthalten, können dann reichen.

Wenn man jedoch abweichende oder sehr spezielle Wünsche hat, kann es kompliziert werden. Es geht ziemlich alles, doch muss man dann in die Tiefe gehen. Es ist nicht mehr so wie bei Word & Co., dass man sich alles irgendwie zurechtschieben kann, man muss saubererweise Makros definieren.

Zitat:
Original von Wuselchen
Und gibts vielleicht Lektüre, die genau mein Form von Problemen behandelt? Google spuckt mir ziemlich oft irgendwelche Fetisch-Seiten aus, "justify" und "latex" z.b. ging gar nicht!


google versteht vielleicht +"LaTeX" mit entsprechender Großschreibung besser. Leider taugt es nicht so viel, dass man z.B. mit backslash suchen kann (\begin etc).

Man kann dann vielleicht gängige Online-Quellen heranziehen. Siehe z.B. LaTeX online resources.

Wenn Du dem Link folgst, stößt Du übrigens auf eine neue TeX-Seite: TeX, LaTeX and friends. Das ist eine TeX-Frage&Antwort-Seite, wiki&vote-basiert. Dort sind schreiben etliche sehr erfahrene LaTeX-Nutzer und Programmierer und LaTeX-Freunde. Soweit ich weiß, freuen sie sich über Fragen, die den Aufbau einer Wissensbasis dort voranbringen. Dort wären Deine speziellen Fragen daher auch sehr willkommen. Wie hier natürlich. Augenzwinkern

Viele Grüße,

Stefan
Wuselchen Auf diesen Beitrag antworten »

Hi Stefan, vielen Dank für deine Hilfe...

bis grad hat das alles prima geklappt, nur in diesem frame hier nicht:

\documentclass{beamer}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usetheme{CambridgeUS}
\usepackage{ragged2e}

\begin{document}
\begin{frame}[t]\frametitle{Thermische Zustandsgleichung}
Der Zustand eines thermodynamischen Systems wird durch drei messbare physikalische Größen bestimmt:
\vspace{0.5cm}
\begin{itemize}
\item spezifisches Volumen $v=1/\rho$
\item Druck $p$
\item Temperatur $T$
\end{itemize}
\vspace{0.5cm}
\justifying
Die thermische Zustandsgleichung beschreibt den stoffspezifischen Zusammenhang dieser Größen, die den {\bf inneren Zustand} eines Systems bestimmen. Im Gegensatz hierzu beschreibt die Mechanik z.B. durch den Ort ($x$, $y$, $z$) und die Geschwindigkeit ($v_x$, $v_y$, $v_z$) den {\bf äußeren Zustand} eines Systems.
\end{frame}
\end{document}

Wie kommt das?
Stefan_K Auf diesen Beitrag antworten »

Blocksatz ist absatzbezogen - beende den Absatz vor dem Frame, also füge eine Leeerzeile vor \end{frame} ein, dann wird ausgerichtet.

Stefan


--
TeXblog
Wuselchen Auf diesen Beitrag antworten »

ah jetzt ja!!!! vielen Dank ^^
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »