我正在努力这个盒子通过将规则放在奇数页的右侧,偶数页的左侧,看起来会更好一些。以下是示例:
\documentclass{article}
\usepackage{graphicx}
\usepackage{lipsum}
\usepackage[breakable,skins]{tcolorbox}
\usepackage{ifoddpage}
\newenvironment{boxWarning}[1]{%
\checkoddpage
\ifoddpage
\def\myrule {rightrule}
\def\posiz {east}
\else
\def\myrule {leftrule}
\def\posiz {west}
\fi
\begin{tcolorbox}[breakable,enhanced,arc=0mm,colback=gray!5,colframe=gray, \myrule=12mm,
overlay={%
\node[anchor=north \posiz,outer sep=2pt] at (frame.north \posiz) {%
\includegraphics[width=8mm]{img/attenzione.png}%
};%
}]%
#1%
}%
{\end{tcolorbox}}
\usepackage{lipsum}
\begin{document}
\begin{boxWarning}
\lipsum[2]
\end{boxWarning}
\newpage
\begin{boxWarning}
\lipsum
\end{boxWarning}
\end{document}
如您所见,当框显示在两个页面上时,就会出现问题:侧边规则在两个页面上都保留在同一侧。另一个“微调”可能是不再显示第二页上的图标。 这是图标
答案1
我决定在问题被问到两天前就回答问题... ;-) tcolorbox 2.33 (2013 年 4 月 7 日) 具有左右切换功能,允许在偶数页上切换左右规则。您可以在 v2.33 的第 22 页找到此功能 :-) 请注意changepage
提供偶数/奇数决策规则的包的用法以及\ifoddpage
用于覆盖的宏。对于您的示例,您可以像下面这样使用它:
\documentclass{article}
\usepackage{graphicx}
\usepackage{lipsum}
\usepackage[most]{tcolorbox}
\usepackage{changepage}
\newtcolorbox{boxWarning}{enhanced,breakable,
check odd page,toggle left and right,arc=0mm,
colback=gray!5,colframe=gray,rightrule=12mm,
overlay unbroken and first={%
\ifoddpage\coordinate (X) at ([xshift=-6mm,yshift=-6mm]frame.north east);
\else\coordinate (X) at ([xshift=6mm,yshift=-6mm]frame.north west);\fi
\node at (X) {\includegraphics[width=8mm]{attenzione.png}};}
}
\usepackage{lipsum}
\begin{document}
\begin{boxWarning}
\lipsum[2]
\end{boxWarning}
\newpage
\begin{boxWarning}
\lipsum
\end{boxWarning}
\end{document}