Grafik mit der Breite der Marginalien plus \linewidth

Tabellen und Grafiken erstellen und anordnen


Sagittarius A*
Forum-Newbie
Forum-Newbie
Beiträge: 4
Registriert: Do 11. Okt 2018, 11:40

Grafik mit der Breite der Marginalien plus \linewidth

Beitrag von Sagittarius A* »

Hallo,
ich würde gerne wissen, wie ich Grafiken und Tabellen über die ganze Breite der Seite inklusive der Marginalien anzeigen kann. Ohne die rechnerei von "Hand" erledigen zu müssen.

Vielen Dank, für jeden Beitrag.
\documentclass[10pt, a4paper, ngerman]{scrartcl}
\usepackage[utf8]{inputenc}   % Umlaute direkt verwenden
\usepackage[T1]{fontenc}      % Schriftkodierung, wichtig!
\usepackage{graphicx}         % ermöglicht das einbinden von Bilder, Grafiken und backgrounds
\usepackage{caption}          % ermöglicht eine Beschriftung von Grafiken oder Tabellen ohne Gleitumgebung
\usepackage{blindtext}        % einfügen von automatisch generierten Text, huuu // ähnlich ipsum
\usepackage[style=apa,sortcites=true,sorting=nyt,backend=biber]{biblatex} % Literaturverzeichnis

\begin{document}

   \reversemarginpar % CI forderung, Marginalien auf der linken Seite
   \leavevmode
   \marginpar{\rule{\linewidth}{1cm}}
   \marginpar{bla bla bla}
   \blindtext

   	\noindent\rule{\linewidth}{1cm}% statt Bild
    \captionof{figure}{Bild über die ganze Textbreite (ist bei mir der Noramalfall) und funktioniert gut}
    
    \vspace{5mm}    
   	die Beiden weiten:
   	\the\marginparsep \ plus \the\marginparwidth \ von Hand zusammengerechnet ergibt 87 und \the\textwidth \ dazu ergibt 460
    
   	\hspace*{-87 pt}\rule{460 pt}{1cm}
   	\captionof{figure}{Bild an der richtigen Stelle mit der richtigen Breite. Ganzgenau was ich möchte!! Wenn da nur nicht die lästige rechnerei wäre :-)}
    
	\noindent\makebox[\textwidth]{\rule{\paperwidth}{1cm}}
	\captionof{figure}{Bild über die ganze Papierbreite (nicht was ich normalerweise brauche)}	


\end{document}
Bonus Frage: Warum funktioniert das Minimalbeispiel nicht mehr wenn wenn biblatex nicht eingebunden ist?

markusv
Forum-Meister
Forum-Meister
Beiträge: 947
Registriert: Do 3. Sep 2015, 17:20
Wohnort: Leipzig

Re: Grafik mit der Breite der Marginalien plus \linewidth

Beitrag von markusv »

Hallo!
Sagittarius A* hat geschrieben:Ohne die rechnerei von "Hand" erledigen zu müssen.
Wenn du weißt, wie du die Längen bestimmst, kannst du sie doch auch einfach innerhalb der Grafiken/rules etc. benutzen, siehe Minimalbeispiel.
Sagittarius A* hat geschrieben:Bonus Frage: Warum funktioniert das Minimalbeispiel nicht mehr wenn wenn biblatex nicht eingebunden ist?
Huh?!? Anbei das Beispiel ohne biblatex und mit ein paar wenigen Hinweisen.
\documentclass[10pt]{scrartcl}
\usepackage[utf8]{inputenc}   % in neuem LaTeX nicht mehr notwendig, für Online-Editor schon noch
\usepackage[T1]{fontenc}
%\usepackage{caption}          %ermöglicht eine Beschriftung von Grafiken oder Tabellen ohne Gleitumgebung --> das kann KOMA-Script auch ohne Zusatzpaket
\usepackage{blindtext}

\begin{document}

   \reversemarginpar % CI forderung, Marginalien auf der linken Seite
   \leavevmode
   \marginpar{\rule{\linewidth}{1cm}}
   \marginpar{bla bla bla}
   \blindtext

      \noindent\rule{\linewidth}{1cm}% statt Bild
    \captionof{figure}{Bild über die ganze Textbreite (ist bei mir der Noramalfall) und funktioniert gut}
    
    \vspace{5mm}    
      die Beiden weiten:
      \the\marginparsep \ plus \the\marginparwidth \ von Hand zusammengerechnet ergibt 87 und \the\textwidth \ dazu ergibt 460
    
      \hspace*{-\dimexpr\marginparsep+\marginparwidth}\rule{\dimexpr\textwidth+\marginparwidth+\marginparsep}{1cm}
      \captionof{figure}{Bild an der richtigen Stelle mit der richtigen Breite. Ganzgenau was ich möchte!! Wenn da nur nicht die lästige rechnerei wäre }

   \noindent\makebox[\textwidth]{\rule{\paperwidth}{1cm}}
   \captionof{figure}{Bild über die ganze Papierbreite (nicht was ich normalerweise brauche)}   
\end{document}
EDIT:
Sagittarius A* hat geschrieben:Bonus Frage: Warum funktioniert das Minimalbeispiel nicht mehr wenn wenn biblatex nicht eingebunden ist?
Ah, ok. Wenn du in Overleaf biblatex auskommentierst, kommt eine Fehlermeldung. Diese wird durch einen Klick auf recompile from scratch, der alle Hilfsdateien löscht und das Projekt von Grund auf neu kompiliert, beseitigt. Ein Overleaf-interner Vorgang anscheinend.
Wäre Microsoft Word für das Schreiben von Büchern entwickelt worden,
würde es Microsoft Book heißen.

Unkomplizierte und schnelle LaTeX-Hilfe, bspw. Erstellung von Vorlagen und Bewerbungen:
Help-LaTeX@web.de

Sagittarius A*
Forum-Newbie
Forum-Newbie
Beiträge: 4
Registriert: Do 11. Okt 2018, 11:40

Beitrag von Sagittarius A* »

Vielen Dank!
\dimexpr\marginparsep+\marginparwidth
da wäre ich alleine nie darauf gekommen.

Gast

Re: Bonusfrage

Beitrag von Gast »

Sagittarius A* hat geschrieben:Bonus Frage: Warum funktioniert das Minimalbeispiel nicht mehr wenn wenn biblatex nicht eingebunden ist?
Wenn das Beispiel zuvor mit biblatex erstellt wurde, dann wäre das dadurch zu erklären, dass biblatex einige für sich selbst bestimmte Befehle in die .aux-Datei schreibt. Wenn biblatex dann aus der Präambel herausgenommen wird, aber die .aux-Datei beim nächsten Kompiliervorgang gelesen wird, dann steht da ein Befehl, der nun nicht mehr bekannt ist. Es kommt zu einem Fehler. Dieser Fehler lässt sich dadurch beheben, dass die alte .aux-Datei mit den nun nicht mehr bekannten Befehlen gelöscht wird. Da dieser Fehler nur in Kombination mit einer alten .aux-Datei auftritt, ist der in markusvs Beispiel nicht mehr zu sehen.

Gast

Beitrag von Gast »

Schau dir auch mal die addmargin-Umgebung an. Könnte eventuell nützlich sein …

Sagittarius A*
Forum-Newbie
Forum-Newbie
Beiträge: 4
Registriert: Do 11. Okt 2018, 11:40

Beitrag von Sagittarius A* »

Anonymous hat geschrieben:Schau dir auch mal die addmargin-Umgebung an. Könnte eventuell nützlich sein …
Cool, jetzt habe ich gleich zwei Lösungen welche funktionieren. Ich habe beide Grundideen für mich zusammengeführt.
    \begin{addmargin}[-\dimexpr\marginparsep+\marginparwidth]{0pt}
	    \rule{\dimexpr\textwidth+\marginparwidth+\marginparsep}{1cm}
        \captionof{figure}{diese Version ist intuitiver/einfacher in der Benutzung}
    \end{addmargin}
Danke, funzt für mich bestens!

markusv
Forum-Meister
Forum-Meister
Beiträge: 947
Registriert: Do 3. Sep 2015, 17:20
Wohnort: Leipzig

Beitrag von markusv »

Wenn du die Umgebung nutzt, brauchst du die Länge nicht mehr selber zusammen stellen. Das lässt sich dann noch weiter vereinfachen:
    \begin{addmargin}[-\dimexpr\marginparsep+\marginparwidth]{0pt}
	    \rule{\linewidth}{1cm}%<--
        \captionof{figure}{diese Version ist intuitiver/einfacher in der Benutzung}
    \end{addmargin}
Wäre Microsoft Word für das Schreiben von Büchern entwickelt worden,
würde es Microsoft Book heißen.

Unkomplizierte und schnelle LaTeX-Hilfe, bspw. Erstellung von Vorlagen und Bewerbungen:
Help-LaTeX@web.de

Sagittarius A*
Forum-Newbie
Forum-Newbie
Beiträge: 4
Registriert: Do 11. Okt 2018, 11:40

Beitrag von Sagittarius A* »

@Forum-Meister Vielen Dank, ich habe deinen Vorschlag übernommen.

Eben ist mir aufgefallen, dass die \caption nicht richtig gesetzt wird. Ist jetzt nicht wirklich schlimm, wenn es möglich ist wäre eine \caption über die ganze Bildbreite schöner...
Wie wäre dies zu erreichen?
\documentclass[10pt]{scrartcl}
\usepackage[utf8]{inputenc}   % in neuem LaTeX nicht mehr notwendig, für Online-Editor schon noch
\usepackage[T1]{fontenc}
%\usepackage{caption}          %ermöglicht eine Beschriftung von Grafiken oder Tabellen ohne Gleitumgebung --> das kann KOMA-Script auch ohne Zusatzpaket
\usepackage{blindtext}

\begin{document}

   \reversemarginpar % CI forderung, Marginalien auf der linken Seite
   \leavevmode
   \marginpar{\rule{\linewidth}{1cm}}
   \marginpar{bla bla bla}
   \blindtext

      \noindent\rule{\linewidth}{1cm}% statt Bild
    \captionof{figure}{Bild über die ganze Textbreite (ist bei mir der Noramalfall) und funktioniert gut}
    
    \vspace{5mm}    
	\begin{addmargin}[-\dimexpr\marginparsep+\marginparwidth]{0pt}
       \rule{\linewidth}{1cm}%<--
        \captionof{figure}{diese Version ist noch intuitiver/einfacher in der Benutzung, laaanger Text, laaanger Text, laaanger Text}
        \hspace*{-\dimexpr\marginparsep+\marginparwidth}{
            \captionof{figure}{diese Version ist intuitiver/einfacher in der Benutzung, laaanger Text, laaanger Text, laaanger Text}
        }
        \caption{laaanger Text laaanger Text laaanger Text laaanger Text laaanger Text laaanger Text laaanger Text laaanger Text}
    \end{addmargin}

\end{document}

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

\documentclass[fontsize=10pt, ngerman]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{babel}
\usepackage{blindtext}

\begin{document}
\begin{addmargin}[-\dimexpr\marginparsep+\marginparwidth]{0pt}
	\begin{minipage}{\linewidth}
		\rule{\linewidth}{1cm}
		\captionof{figure}{\blindtext}
	\end{minipage}
\end{addmargin}
\end{document}
Außerdem werden Beschriftung und Abbildung durch die minipage-Umgebung nicht auf verschiedenen Seiten ausgegeben.

Antworten