
Используя framed.sty
пакет для рисования затененных рамок вокруг текста с shaded*
окружающей средой, есть только один параметр для установки интервала вокруг текста. \FrameSep
одновременно регулирует как горизонтальный, так и вертикальный интервал текста от границ затененного блока. Будучи неудобным, размещение \FrameSep=1em
дает левые/правые поля, которые я хочу, в то время как \FrameSep=0.75em
дает верхний/нижний интервал, который я хочу.
Есть ли способ покопаться внутри, framed.sty
чтобы независимо установить отступы слева/справа и сверху/снизу?
Если (как я подозреваю) нужно перейти на гораздо более гибкий mdframed.sty
, как можно создать с его помощью простую shaded*
среду? -- Признаюсь, мне сложно разобраться в документации.
решение1
Вот простой пример:
\documentclass{article}
\usepackage{xcolor}
\usepackage{mdframed}
\begin{document}
\noindent Normal text here ...
\begin{mdframed}[leftmargin=1cm,
skipabove=1cm,
linecolor=blue,
backgroundcolor=red!10,
linewidth=2pt,
innerleftmargin=1em,
innerrightmargin=1em,
innertopmargin=.75em,
innerbottommargin=.75em,
]
If (as I suspect) the thing to do is to move to the much more flexible mdframed.sty, how does one produce a simple shaded* environment with that? -- I confess I'm finding the documentation hard to crack.
\end{mdframed}
\end{document}
Я не думаю, что документация сложная, см., например, страницу 6, где вы можете найти большинство настроек для регулируемой длины mdframed
:
решение2
Вот решение с framed
: Я переопределил shaded*
среду, чтобы включить значения для \leftskip
и rightskip
. Обратите внимание, что перед следующим текстом требуется пустая строка.
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{ebgaramond}
\usepackage[showframe]{geometry}
\usepackage[svgnames]{xcolor}
\usepackage{lettrine}
\usepackage{framed}
\renewenvironment{shaded*}{%
\def\FrameCommand{\fboxsep=\FrameSep\colorbox{shadecolor}}%
\MakeFramed{\advance\hsize-\width\FrameRestore}%
\leftskip 1.5em \rightskip 1.5em}%
{\endMakeFramed}%
\colorlet{shadecolor}{Gainsboro!60!MistyRose}
\begin{document}
\lettrine{H}{owever}, the egg only got larger and larger, and more and more human:
when she had come within a few yards of it, she saw that it had eyes
and a nose and mouth; and when she had come close to it, she saw clearly
that it was HUMPTY DUMPTY himself. ‘It can’t be anybody else!’ she said
to herself. ‘I’m as certain of it, as if his name were written all over
his face.’
\begin{shaded*}
\lettrine{I}{t} might have been written a hundred times, easily, on that enormous
face. Humpty Dumpty was sitting with his legs crossed, like a Turk, on
the top of a high wall--such a narrow one that Alice quite wondered how
he could keep his balance--and, as his eyes were steadily fixed in the
opposite direction, and he didn’t take the least notice of her, she
thought he must be a stuffed figure after all.
‘And how exactly like an egg he is!’ she said aloud, standing with her
hands ready to catch him, for she was every moment expecting him to
fall.
‘It’s VERY provoking,’ Humpty Dumpty said after a long silence, looking
away from Alice as he spoke, ‘to be called an egg--VERY!’
‘I said you LOOKED like an egg, Sir,’ Alice gently explained. ‘And some
eggs are very pretty, you know’ she added, hoping to turn her remark
into a sort of a compliment.
\end{shaded*}
‘Some people,’ said Humpty Dumpty, looking away from her as usual, ‘have
no more sense than a baby!’
\end{document}