
framed.sty
環境を使用してテキストの周囲に影付きのボックスを描画するパッケージでshaded*
は、テキストの周囲の間隔を設定するためのパラメーターは 1 つだけです。\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}