首先我想给出一个最小的工作示例:
\documentclass{ctexbook}
\usepackage{layouts}
\begin{document}
\begin{figure}
\printinunitsof{cm}
\oddpagelayoutfalse
%\currentpage
%\drawmarginparsfalse %marginnote
\printheadingsfalse
\pagediagram
\pagevalues
\caption{页面结构图} \label{fig:pplt}
\end{figure}
\end{document}
使用以下方式编译乳胶漆,我得到以下 PDF 文件
我的问题是
- 如何将“页眉、主体、页脚、边注”文字分别替换为“页眉,主体,页脚、边注”?
- 如何将页首的文字(圆圈......)替换为中文翻译版?
欢迎任何帮助!
答案1
您可以使用patchcmd
替换包中的硬编码英文文本layout.sty
,如下面的代码所示:
\documentclass{ctexbook}
\usepackage{layouts}
\usepackage{xpatch}
\makeatletter
\patchcmd{\drawpage}
{\begin{small} The circle is at 1 inch from the top and left of the
page. Dashed lines represent (\texttt{\bs hoffset + 1 inch}) and
(\texttt{\bs voffset + 1 inch}) from the top and left of the
page.}
{\begin{small} 中文……}
{}
{}
\patchcmd{\drawpage}
{{\l@ylabelfont Header}}
{{\l@ylabelfont 页眉}}
{}
{}
\patchcmd{\drawpage}
{{\l@ylabelfont Body}}
{{\l@ylabelfont 主体}}
{}
{}
\patchcmd{\drawpage}
{{\l@ylabelfont Footer}}
{{\l@ylabelfont 页脚}}
{}
{}
\patchcmd{\drawpage}
{{\l@ylabelfont\shortstack{Margin\\Note}}}
{{\l@ylabelfont 边注}}
{}
{}
\makeatother
\begin{document}
\begin{figure}
\printinunitsof{cm}
\oddpagelayoutfalse
%\currentpage
%\drawmarginparsfalse %marginnote
\printheadingsfalse
\pagediagram
\pagevalues
\caption{页面结构图} \label{fig:pplt}
\end{figure}
\end{document}
您应该为“圆圈...”输入正确的翻译。
答案2
很抱歉,我的系统中没有您的语言,因此我用相应的希腊语单词来回答您提出的问题。
整个想法是将原始图像放在 tikzpicture 中,然后将另一个 tikzpicture 放在原始图像上,并用白色字体写上替换的单词(以覆盖旧单词):
\documentclass{article}
\usepackage{layouts}
\usepackage{caption}
\usepackage{tikz}
\usepackage{polyglossia}
\usetikzlibrary{positioning}
\setmainfont{Linux Libertine O}
\begin{document}
\noindent\begin{tikzpicture}
\node (A) at (0,0){\begin{minipage}{\textwidth}%
\printinunitsof{cm}%
\oddpagelayoutfalse%
%\currentpage
%\drawmarginparsfalse %marginnote
\printheadingsfalse%
\drawpage%
%\pagediagram
\pagevalues%
\captionof{figure}{Left-hand two-column page layout parameters} \label{fig:pplt}%
\end{minipage}%
};
\end{tikzpicture}%
\begin{tikzpicture}[remember picture,overlay]
\node[text width=2cm,fill=white] at ([yshift=1.9cm,xshift=0.4cm]current page.center){Σώμα};
\node[text width=2cm,fill=white,inner sep=0,outer sep=0] at ([yshift=-2.74cm,xshift=0.4cm]current page.center){Υποσέλιδο};
\node[text width=2cm,fill=white,inner sep=0,outer sep=0] at ([yshift=6.4cm,xshift=0.4cm]current page.center){Κεφαλίδα};
\node[text width=1cm,fill=white,inner sep=0,outer sep=0] at ([yshift=1.4cm,xshift=-4.57cm]current page.center){Περι- θώριο};
\end{tikzpicture}
\end{document}
输出: