회색 상자로 텍스트 강조 표시

회색 상자로 텍스트 강조 표시

아래 이미지와 동일한 회색 상자를 어떻게 얻을 수 있습니까? 특히 내부 패딩이 없어야 하며 새 단락을 시작할 때 들여쓰기가 끊어져서는 안 됩니다(이미지의 DEFINITION 들여쓰기 참조). 미리 감사드립니다! 여기에 이미지 설명을 입력하세요

답변1

\colorbox기본 들여쓰기가 있는 경우 는 a로 시작해야 하며 , \noindent상자의 너비가 와 같아야 더 좋습니다 \linewidth. 따라서 목록 내부와 같은 좁은 공간에서도 사용할 수 있습니다. 들여쓰기 및 단락 건너뛰기는 a minipage또는 a 내부에서 재설정되므로 \parbox가장 쉬운 수정은 각 상자 내부에서 수동으로 및 내부를 수행하는 것입니다 \setlength. \parskip상위 \parindent들여쓰기는 문서 환경(예: 목록 내부)에 따라 변경될 수 있기 때문입니다. 가능한 모든 환경에 대해 두 길이를 자동으로 설정하는 것은 까다로울 수 있습니다. 이 예에서는 본문과 목록 내에서만 올바른 들여쓰기와 단락을 사용하는 매크로를 보여줍니다 itemize. 다른 곳에서도 작동한다는 보장은 없습니다.

여기에 이미지 설명을 입력하세요

\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}

답변2

당신이 원하는 것이 무엇인지 모르겠습니다. 자세한 내용과 MWE를 제공해 주세요.

다음은 내 추측을 바탕으로 한 예입니다.

\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}

여기에 이미지 설명을 입력하세요

관련 정보