我正在使用eso-pic
注释这封信,使用scrlttr2
,由
daleif 先前的回答针对这个问题“在处理后的文档顶部为文章类写入 TeX 文件名”。如您所见,文本重叠存在一些问题。解决这个问题最简单的方法是什么?
该注释由 Mercurial 生成,代表最后一次提交的时间戳(参见 在 TeX 文档中嵌入 Mercurial 版本控制信息),但我将其硬连线,因为这个问题与 Mercurial 没有任何关系。
\documentclass[foldmarks=true,foldmarks=blmtP,fromalign=false,version=last]{scrlttr2}
\usepackage{fouriernc}
% Add code to annotate file with file name and hash of last hg cset to change the file.
\usepackage{eso-pic,picture}
\AddToShipoutPictureBG*{
% change reference point to page upper left
\AtPageUpperLeft{
\put(\oddsidemargin+1in+0.5\textwidth,-1cm){%
\makebox[0pt][c]{\textbf{shaw.tex} 09da3da30168bc8301b68b894b0414cd87ba0a16 2014-08-30 18:13 +0530 } }
}
}
\usepackage[T1]{fontenc}
\begin{document}
\setkomavar{fromname}{H. G. Wells}
\setkomavar{fromaddress}{Spade House\\ 5281 Radnor Cliff Crescent (West Side)\\ Sandgate, Kent}
\def\today{1st January, 1895}
\begin{letter}{
George Bernard Shaw,\\
Shaw's Corner,\\
Bibbs Hall Lane,\\
Ayot St. Lawrence, Hertfordshire\\}
\opening{Dear Shaw,}
You suck!
\closing{Sincerely}
\end{letter}
\end{document}
更新:
感谢史蒂文的有益回复。
我记得上次我问过关于注释 LaTeX 文件的问题, 有哪些方法可以将内容绝对定位在页面上? 例如,有人区分了在 TeX 上书写而不考虑已经存在的内容(这意味着它可能会覆盖内容),或将其放在“提供的”位置,例如页面顶部。我不记得细节了。有人有关于此内容的链接吗?
答案1
我在有哪些方法可以将内容绝对定位在页面上?解决您的问题。它使用everypage
而不是eso-pic
(请参阅下面的eso-pic
版本)。请注意,正如所写,\atxy
只会将上层文本放置在调用它的页面上。但是,如果您希望在每一页上都显示上层文本,则可以将 更改\AddThispageHook
为\AddEverypageHook
。
\documentclass[foldmarks=true,foldmarks=blmtP,fromalign=false,version=last]{scrlttr2}
\usepackage{fouriernc}
% Add code to annotate file with file name and hash of last hg cset to change the file.
%\usepackage{eso-pic,picture}
\usepackage[T1]{fontenc}
%
\usepackage{everypage}
\usepackage{lipsum}
% THESE ARE LaTeX DEFAULTS; CAN CHANGE IF NEEDED.
\def\PageTopMargin{1in}
\def\PageLeftMargin{1in}
\newcommand\atxy[3]{%
\AddThispageHook{\smash{\hspace*{\dimexpr-\PageLeftMargin-\hoffset+#1\relax}%
\raisebox{\dimexpr\PageTopMargin+\voffset-#2\relax}{#3}}}}
\atxy{.5\paperwidth}{0.5cm}{\makebox[0pt]{%
\textbf{shaw.tex} 09da3da30168bc8301b68b894b0414cd87ba0a16 2014-08-30 18:13 +0530}}
\begin{document}
\setkomavar{fromname}{H. G. Wells}
\setkomavar{fromaddress}{Spade House\\ 5281 Radnor Cliff Crescent (West Side)\\ Sandgate, Kent}
\def\today{1st January, 1895}
\begin{letter}{
George Bernard Shaw,\\
Shaw's Corner,\\
Bibbs Hall Lane,\\
Ayot St. Lawrence, Hertfordshire\\}
\opening{Dear Shaw,}
You suck!
\closing{Sincerely}
\end{letter}
\end{document}
可以通过将 OP 原始 MWE 中的 更改为 来获得类似的解决方案eso-pic
,如下所示-1cm
-0.5cm
\put
\documentclass[foldmarks=true,foldmarks=blmtP,fromalign=false,version=last]{scrlttr2}
\usepackage{fouriernc}
% Add code to annotate file with file name and hash of last hg cset to change the file.
\usepackage{eso-pic,picture}
\AddToShipoutPictureBG*{
% change reference point to page upper left
\AtPageUpperLeft{
\put(\oddsidemargin+1in+0.5\textwidth,-0.5cm){%
\makebox[0pt][c]{\textbf{shaw.tex} 09da3da30168bc8301b68b894b0414cd87ba0a16 2014-08-30 18:13 +0530 } }
}
}
\usepackage[T1]{fontenc}
\begin{document}
\setkomavar{fromname}{H. G. Wells}
\setkomavar{fromaddress}{Spade House\\ 5281 Radnor Cliff Crescent (West Side)\\ Sandgate, Kent}
\def\today{1st January, 1895}
\begin{letter}{
George Bernard Shaw,\\
Shaw's Corner,\\
Bibbs Hall Lane,\\
Ayot St. Lawrence, Hertfordshire\\}
\opening{Dear Shaw,}
You suck!
\closing{Sincerely}
\end{letter}
\end{document}