Text mit grauem Kästchen hervorheben

Text mit grauem Kästchen hervorheben

Wie kann ich dieselbe graue Box wie im Bild unten erreichen? Insbesondere sollte es keine interne Polsterung geben und die Einrückung sollte beim Beginn eines neuen Absatzes nicht unterbrochen werden (vgl. die Einrückung von DEFINITION im Bild). Vielen Dank im Voraus! Bildbeschreibung hier eingeben

Antwort1

Das \colorboxsollte mit einem beginnen, \noindentwenn es eine Standardeinrückung gibt, und besser sollte die Breite des Felds gleich sein \linewidth, damit es auch in engen Räumen verwendet werden kann, wie innerhalb einer Liste. Die Einrückung und Absatzsprünge werden innerhalb von einem minipageoder einem zurückgesetzt \parbox, daher ist die einfachste Lösung, \setlengthdas \parskipund das manuell \parindentin jedes Feld einzufügen, da sich die übergeordnete Einrückung je nach Umgebung des Dokuments (z. B. innerhalb von Listen) ändern kann. Beide Längen für jede mögliche Umgebung automatisch einzustellen, könnte knifflig sein. Das Beispiel zeigt ein Makro, das die richtige Einrückung und den richtigen Absatz nur innerhalb des Haupttexts und einer itemizeListe vornimmt. Keine Garantie, dass es anderswo funktioniert:

Bildbeschreibung hier eingeben

\documentclass[twocolumn]{article}
\usepackage{xcolor}
\usepackage{lipsum}
\parindent 3em  % some clear but dirty indentation and paragraph skip  
\parskip 2em plus 1em minus 1em

\newlength{\currentparindent}\currentparindent\parindent % remember the global indentation
\newlength{\currentparskip}\currentparskip\parskip % remember the global skips


\makeatletter
\newcommand\graybox[1]{%
\noindent % no intented box !!
\colorbox{gray!20}{\parbox[t]{\linewidth}{%
\def\insideitemize{itemize}
 \ifx\@currenvir\insideitemize  
        \parskip 4pt plus 2pt minus 1pt % like itemsep
  \else
        \parindent\currentparindent % use the global indentation
        \parskip\currentparskip  % use the global paragrapk skip

\fi  #1}}}
\makeatother

\begin{document}

\lipsum[2][1-2]\par \lipsum[3][1-2] % normal dummy paragraphs

\graybox{\lipsum[2][1-2]\par \lipsum[3][1-2]} % now boxed

\lipsum[5][1-2]
\newpage % now in nested list
\begin{itemize}
    \item \lipsum[2][1-2] \par \lipsum[3][1-2]
    \item \graybox{\lipsum[2][1-2]\par \lipsum[3][1-2]}
    \item \lipsum[5][1-2]
    \begin{itemize}
    \item \lipsum[2][1-2] \par \lipsum[3][1-2]
    \item \graybox{\lipsum[2][1-2]\par \lipsum[3][1-2]}
    \item \lipsum[5][1-2]
\end{itemize}   
\end{itemize}   
\end{document}

Antwort2

Ich weiß nicht, was Sie wollen. Bitte geben Sie weitere Details und ein MWE an.

Hier ist nur ein Beispiel, das auf meiner Vermutung basiert:

\documentclass{article}
\usepackage{xcolor}
\begin{document}
\colorbox{gray!30}{
\begin{minipage}{\textwidth}
\setlength\parindent{24pt} some text you want with indentation;\\
some text you want but no indentation.
\end{minipage}}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen