![如何将 tcolorbox 的传播选项与裁剪包一起使用?](https://linux22.com/image/453091/%E5%A6%82%E4%BD%95%E5%B0%86%20tcolorbox%20%E7%9A%84%E4%BC%A0%E6%92%AD%E9%80%89%E9%A1%B9%E4%B8%8E%E8%A3%81%E5%89%AA%E5%8C%85%E4%B8%80%E8%B5%B7%E4%BD%BF%E7%94%A8%EF%BC%9F.png)
当我将展开式 tcolorbox 与 geometry 和 crop 包一起使用时,tcolorbox 会忽略 crop 给出的页面偏移量。如我的 MWE 所示,非展开式 tcolorbox 不会出现这种情况。我怎样才能让所有 tcolorbox 都遵守这些偏移量?
\documentclass[%
a5paper,
portrait]{report}
\usepackage[most]{tcolorbox}
\usepackage{geometry}
\usepackage{blindtext}
\usepackage[a4,center]{crop}
\crop
\geometry{%
centering,
top=20mm,
bottom=20mm,
inner=30mm,
outer=20mm}
\begin{document}
\pagestyle{plain}
\blindtext
\begin{tcolorbox}[
colupper=black,
title hidden]
\blindtext
\end{tcolorbox}
\begin{tcolorbox}[
colupper=black,
spread,
title hidden]
\blindtext
\end{tcolorbox}
\end{document}
答案1
欢迎使用 TeX.SX!由于crop
软件包增加了页边距并移动了页面原点,因此您需要手动设置 的跨度tcolorbox
。
页面的高度和宽度存储在\paperheight
和\paperwidth
中,而纸张的高度和宽度(即页面加上出血)存储在和中\stockheight
。您可以使用这些值来计算应从纸张边距中减少多少跨度(即分别为和和和的\stockwidth
差值的一半)。\stockheight
\paperheight
\stockwidth
\paperwidth
请注意,您不能使用spread upwards
,spread downwards
因为这些选项还将设置在这里不起作用的框的宽度。
\documentclass[%
a5paper,
portrait]{report}
\usepackage[most]{tcolorbox}
\usepackage{geometry}
\usepackage{blindtext}
\usepackage[a4,center]{crop}
\crop
\geometry{%
centering,
top=20mm,
bottom=20mm,
inner=30mm,
outer=20mm}
\begin{document}
\pagestyle{plain}
\blindtext
\begin{tcolorbox}[
colupper=black,
title hidden]
\blindtext
\end{tcolorbox}
\begin{tcolorbox}[
colupper=black,
move upwards={-0.5\stockheight+0.5\paperheight},
fill downwards={0.5\stockheight-0.5\paperheight},
spread inwards={0.5\stockwidth-0.5\paperwidth},
spread outwards={-0.5\stockwidth+0.5\paperwidth},
title hidden]
\blindtext
\end{tcolorbox}
\end{document}