我的问题很简单:是否可以使用\pagecolor
from xcolor
(或相关包)来更改包生成的文档的背景颜色preview
?
我尝试\pagecolor{cyan}
在序言、文档正文和不同preview
环境中添加内容,但收效甚微。我还尝试深入研究preview
和xcolor
包的内部结构 — 我怀疑当使用构建页面时preview
,它会干扰xcolor
更改背景颜色,但我无法确定颜色抑制发生的位置……
我会在接下来的几天里继续搜索并向你通报最新情况。与此同时,如果有人也愿意调查此事,我将不胜感激!
这是我在使用和运行M-non-WE
上测试过的:Overleaf
pdfLaTeX
TeXLive 2020
\documentclass{standalone} % changed to `standalone because cropping wasn't good
\usepackage{mwe}
\usepackage[active]{preview}
\usepackage{xcolor}
\pagecolor{cyan} % Doesn't change the preview page color.
% (I wouldn't expect it to, since it's not inside a `preview` environment.)
\begin{document}
%% The following isn't typeset, since `preview` is active.
\pagecolor{cyan} % Doesn't change the preview page color either.
% (Again, this is expected.)
\lipsum[1]
%% What's inside of `preview` environments gets typeset when `preview` is active.
\begin{preview}
\pagecolor{cyan} % Still doesn't change the preview page color...
% I would expect this one to work :-/
\lipsum[2]
\pdftexbanner
\end{preview}
\end{document}
输出如下:
编辑:
我尝试使用 运行相同的代码XeLaTeX
,页面颜色为青色!遗憾的是,由于我这边的限制,我无法使用 以外的其他颜色pdfLaTeX
。
我现在的问题是:是否可以使用 和 中的任何一个来一致地做到这一点pdfLaTeX
?XeLaTeX
LuaLaTeX
答案1
使用当前的 LaTeX(2020-10-01)时,您的文档可以很好地与 pdflatex 配合使用,因为在这种格式下, \pagecolor 命令已更改为使用新的 LaTeX shipout 挂钩,并且在使用预览时不会丢失(但预览可能存在其他问题,例如https://lists.gnu.org/archive/html/bug-auctex/2020-11/msg00000.html)。
对于较旧的格式,您可以尝试一下。
\documentclass{standalone} % changed to `standalone because cropping wasn't good
\usepackage{mwe}
\usepackage[active]{preview}
\usepackage{xcolor}
\newsavebox\pagecolorbox
\savebox\pagecolorbox{%
\makebox[0pt]{\raisebox{-\paperheight}[0pt][0pt]{%
\textcolor{cyan}{\rule{2\paperwidth}{\paperheight}}}}}
\AtBeginDvi{\box\pagecolorbox}
\begin{document}
\lipsum[1]
\begin{preview}
\lipsum[2]
\pdftexbanner
\end{preview}
\end{document}