mdframedパッケージのmdframed環境でタイトルを付けた際にタイトルが枠内ではなく
枠の一部を切って表示されるようにしたいのですが,オプションの設定方法が分からず質問させていただきました。
具体的にはascmacパッケージのitembox環境を使用して
\begin{itembox}[l]{foobar}
hoge
\end{itembox}
としたときと同様の出力をmdframed環境でも実現したいのです。
TikZと併用することや複数ページを跨ぐ箇所がある等の理由により
可能な限りascmacやfancyboxではなくmdframedパッケージを使用したいです。
どなたか分かる方いらっしゃいましたら宜しくお願いします。
回答ありがとうございます。
mdframed のマニュアルを再び読んだところ
framemethod=tikz の Example 6 が枠が閉じていない点を除けば一番求めている出力に近い
(framemethod=default の Example 6 や framemethod=TikZ の Example 5 とは異なり theo などの
counter を定義していない点)ので,これを基に弄ろうとして以下のようなファイルをタイプセットしたところ,
エラーはありませんでしたが大量の Waring が発生し出力された PDF は白紙になってしまいます。
マニュアルの PDF の TeX ソースの該当箇所からそのままプリアンブルにコピーしただけのはずなのですが
どこが間違っているのでしょうか?
【タイプセットした TeX 文書】
\documentclass[uplatex]{jsarticle}
\usepackage{xcolor}
\usepackage[framemethod=tikz]{mdframed}
\mdfsetup{skipabove=\topskip,skipbelow=\topskip}
\usetikzlibrary{calc,arrows}
\tikzset{
excursus arrow/.style={%
line width=2pt,
draw=gray!40,
rounded corners=2ex,
},
excursus head/.style={
fill=white,
font=\bfseries\sffamily,
text=gray!80,
anchor=base west,
},
}
\mdfdefinestyle{digressionarrows}{%
singleextra={%
\path let \p1=(P), \p2=(O) in (\x2,\y1) coordinate (Q);
\path let \p1=(Q), \p2=(O) in (\x1,{(\y1-\y2)/2}) coordinate (M);
\path [excursus arrow, round cap-to]
($(O)+(5em,0ex)$) -| (M) |- %
($(Q)+(12em,0ex)$) .. controls +(0:16em) and +(185:6em) .. %
++(23em,2ex);
\node [excursus head] at ($(Q)+(2.5em,-0.75pt)$) {Digression};},
firstextra={%
\path let \p1=(P), \p2=(O) in (\x2,\y1) coordinate (Q);
\path [excursus arrow,-to]
(O) |- %
($(Q)+(12em,0ex)$) .. controls +(0:16em) and +(185:6em) .. %
++(23em,2ex);
\node [excursus head] at ($(Q)+(2.5em,-2pt)$) {Digression};},
secondextra={%
\path let \p1=(P), \p2=(O) in (\x2,\y1) coordinate (Q);
\path [excursus arrow,round cap-]
($(O)+(5em,0ex)$) -| (Q);},
middleextra={%
\path let \p1=(P), \p2=(O) in (\x2,\y1) coordinate (Q);
\path [excursus arrow]
(O) -- (Q);},
middlelinewidth=2.5em,middlelinecolor=white,
hidealllines=true,topline=true,
innertopmargin=0.5ex,
innerbottommargin=2.5ex,
innerrightmargin=2pt,
innerleftmargin=2ex,
skipabove=0.87\baselineskip,
skipbelow=0.62\baselineskip,
}
\begin{document}
\begin{mdframed}[style=digressionarrows]
This is the test of \texttt{mdframed.sty}.
\end{mdframed}
\end{document}
mdframed のマニュアルを再び読んだところ
framemethod=tikz の Example 6 が枠が閉じていない点を除けば一番求めている出力に近い
(framemethod=default の Example 6 や framemethod=TikZ の Example 5 とは異なり theo などの
counter を定義していない点)ので,これを基に弄ろうとして以下のようなファイルをタイプセットしたところ,
エラーはありませんでしたが大量の Waring が発生し出力された PDF は白紙になってしまいます。
マニュアルの PDF の TeX ソースの該当箇所からそのままプリアンブルにコピーしただけのはずなのですが
どこが間違っているのでしょうか?
【タイプセットした TeX 文書】
\documentclass[uplatex]{jsarticle}
\usepackage{xcolor}
\usepackage[framemethod=tikz]{mdframed}
\mdfsetup{skipabove=\topskip,skipbelow=\topskip}
\usetikzlibrary{calc,arrows}
\tikzset{
excursus arrow/.style={%
line width=2pt,
draw=gray!40,
rounded corners=2ex,
},
excursus head/.style={
fill=white,
font=\bfseries\sffamily,
text=gray!80,
anchor=base west,
},
}
\mdfdefinestyle{digressionarrows}{%
singleextra={%
\path let \p1=(P), \p2=(O) in (\x2,\y1) coordinate (Q);
\path let \p1=(Q), \p2=(O) in (\x1,{(\y1-\y2)/2}) coordinate (M);
\path [excursus arrow, round cap-to]
($(O)+(5em,0ex)$) -| (M) |- %
($(Q)+(12em,0ex)$) .. controls +(0:16em) and +(185:6em) .. %
++(23em,2ex);
\node [excursus head] at ($(Q)+(2.5em,-0.75pt)$) {Digression};},
firstextra={%
\path let \p1=(P), \p2=(O) in (\x2,\y1) coordinate (Q);
\path [excursus arrow,-to]
(O) |- %
($(Q)+(12em,0ex)$) .. controls +(0:16em) and +(185:6em) .. %
++(23em,2ex);
\node [excursus head] at ($(Q)+(2.5em,-2pt)$) {Digression};},
secondextra={%
\path let \p1=(P), \p2=(O) in (\x2,\y1) coordinate (Q);
\path [excursus arrow,round cap-]
($(O)+(5em,0ex)$) -| (Q);},
middleextra={%
\path let \p1=(P), \p2=(O) in (\x2,\y1) coordinate (Q);
\path [excursus arrow]
(O) -- (Q);},
middlelinewidth=2.5em,middlelinecolor=white,
hidealllines=true,topline=true,
innertopmargin=0.5ex,
innerbottommargin=2.5ex,
innerrightmargin=2pt,
innerleftmargin=2ex,
skipabove=0.87\baselineskip,
skipbelow=0.62\baselineskip,
}
\begin{document}
\begin{mdframed}[style=digressionarrows]
This is the test of \texttt{mdframed.sty}.
\end{mdframed}
\end{document}