
Ich habe eine Seite, die oben ein schattiertes Feld hat. Wie kann ich das schattierte Feld mit der Oberseite des Seitenrahmens ausrichten? Es gibt eine kleine Lücke. Mein Code:
\documentclass[10pt]{book}
\usepackage[showframe]{geometry}
\usepackage[x11names]{xcolor}
\usepackage{framed}
\colorlet{shadecolor}{LavenderBlush2}
\usepackage{lipsum}
\begin{document}
\setlength{\OuterFrameSep}{0pt}
\begin{shaded*}
\lipsum[1]
\end{shaded*}
\vfill
\begin{shaded*}
\lipsum[1]
\end{shaded*}
\end{document}
In einer anderen Frage (Schattiertes Feld am unteren Seitenrand ausrichten), wurde vorgeschlagen, den Wert OuterFrameSep
auf 0 zu setzen, um den vertikalen Abstand vor und nach der gerahmten Umgebung zu entfernen. Das scheint nach der gerahmten Umgebung zu funktionieren, davor jedoch nicht.
Antwort1
Versuchen Sie Folgendes, vielleicht funktioniert es auch bei Ihnen:
\documentclass[10pt]{book}
\usepackage{geometry}
\usepackage[x11names]{xcolor}
\usepackage{framed}
\colorlet{shadecolor}{LavenderBlush2}
\setlength{\OuterFrameSep}{0pt}
\usepackage{etoolbox} % <---
\BeforeBeginEnvironment{shaded*}{\topskip=0pt} % <---
\AfterEndEnvironment{shaded*}{\topskip=10pt} % <---
\usepackage{lipsum}
\usepackage{graphicx}
%---------------- Show page layout. Don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%
\begin{document}
\begin{shaded*}
\lipsum[1]
\end{shaded*}
\vfill
\begin{shaded*}
\lipsum[1]
\end{shaded*}
\clearpage
\begin{figure}[ht]
\includegraphics[width=\linewidth]{example-image-duck}
\end{figure}
\section{title}\lipsum
\end{document}
Antwort2
Eine Alternative besteht darin, das Paket zu verwenden tcolorbox
. Hier ist eine Version, die Ihnen viel Kontrolle über praktisch alles gibt:
\documentclass[10pt]{book}
\usepackage[showframe]{geometry}
\usepackage[x11names]{xcolor}
\colorlet{shadecolor}{LavenderBlush2}
\usepackage{lipsum}
\usepackage{tcolorbox}
\tcbuselibrary{breakable}
\begin{document}
\begin{tcolorbox}[boxrule=0mm, boxsep=0mm, sharp corners, colback=shadecolor]
\lipsum[1]
\end{tcolorbox}
\vfill
\begin{tcolorbox}[boxrule=0mm, boxsep=0mm,
after skip=0pt, % this removes some extra space at the bottom
bottom=2ex, top=2ex, right=2ex, left=2ex, % 'padding' between text and border
sharp corners, colback=shadecolor]
\lipsum[1]
\end{tcolorbox}
\end{document}