我的问题是关于使用包时的行号dinbrief
。我想要页码,例如page 1 of 2
等等。我也尝试过这个LastPage
包,但没有成功。这个dinbrief
包很旧,似乎没有人维护……但我很喜欢它。
问题:如何管理页码?
如果您有任何提示或优化,我们将不胜感激。
% vim: ts=4 syntax=tex tenc=utf8 fenc=utf8
\NeedsTeXFormat{LaTeX2e}
\documentclass[10pt]{dinbrief}
\usepackage[a4paper, left=2.5cm, width=12.5cm, height=26cm, marginparwidth=5cm, marginparsep=.1ex]{geometry}
\usepackage{fontspec, xunicode, xltxtra}
\usepackage{polyglossia}
\usepackage{lipsum}
\usepackage{fancyhdr}
\usepackage{color}
\usepackage{setspace}
\usepackage[final,protrusion=true]{microtype}
\fancypagestyle{default}{%
\renewcommand{\headrulewidth}{0pt}%
\fancyhf{}%
\fancyfoot[C]{\footnotesize Seite \thepage\ von \pageref{lastpage}}%
}
\setmainfont[Numbers={OldStyle},Ligatures={Common}]{OfficinaSansITCStd}
\setmainlanguage{german}
\definecolor{markcolor}{cmyk}{0.8,.55,0,0.6}
\definecolor{black}{rgb}{.0,.0,.0}
\newcommand{\markkey}[1]{\color{markcolor}{\bfseries\ #1}\color{black}\hspace{1ex}}
\newcommand{\normalspacing}{\setstretch{1.5}}%
\newcommand{\bkbrk}{|\hspace{1ex}}
\backaddress{Vorname Nachname\hspace{2ex}\bkbrk\\Straße 1\hspace{2ex}\bkbrk\\11000 City}
\newcommand\marginalien{
\vspace{7em}
\scriptsize
\raggedleft
%\normalspacing
%\raggedright
Vorname Nachname\\
Straße 1\\
11000 City\\[1em]
\markkey{E-Mail}[email protected]\\
}
\nobackaddressrule
\signature{Vorname Nachname}
%\place{City}
%\date{2007-10-11}
%\yourmail{}
%\sign{unsere zeichen, unsere Nachricht von}
%\phone{tel}
% \writer{Sachbearbeiter}
\centeraddress
\bottomtext{bottom text}
\nowindowrules
%\windowrules
% Faltmarkierungen
%\nowindowtics
\windowtics
% entsprechend DIN 676 von 1976
%\disabledraftstandard
% entsprechen DIN 676 vom 1991
\enabledraftstandard
%\setaddressllcorner{abstand vom linken rand}
%\setaddressllhpos{abstand vom linken rand}
%\setaddressvpos{abstand vom oberen rand}
%\addresshigh
\addressstd
\subject{\bfseries{Ein Subjekt}}
\begin{document}
\normalspacing
\begin{letter}{Company\\Street 1\\11000 City}
\pagestyle{default}
\marginpar{\marginalien}
\opening{Sehr geehrter Herr Mustermann,}
\lipsum[1]
\closing{Mit freundlichen Grüßen}
\end{letter}
\label{lastpage}
\end{document}
答案1
最快的解决方案是将\let
类中使用的一些预定义页面样式设置为定义的default
页面样式。添加以下行
\makeatletter
\let\ps@plain\ps@default
\let\ps@first@page\ps@default
\makeatother
在定义默认页面样式之后,然后使用
\pagestyle{plain}
代替
\pagestyle{default}
为您的文档。
另外,\label{lastpage}
必须放在 之前\end{letter}
。完整的示例:
% vim: ts=4 syntax=tex tenc=utf8 fenc=utf8
\NeedsTeXFormat{LaTeX2e}
\documentclass[10pt]{dinbrief}
\usepackage[a4paper, left=2.5cm, width=12.5cm, height=26cm, marginparwidth=5cm, marginparsep=.1ex]{geometry}
\usepackage{fontspec, xunicode, xltxtra}
\usepackage{polyglossia}
\usepackage{lipsum}
\usepackage{fancyhdr}
\usepackage{color}
\usepackage{setspace}
\usepackage[final,protrusion=true]{microtype}
\fancypagestyle{default}{%
\renewcommand{\headrulewidth}{0pt}%
\fancyhf{}%
\fancyfoot[C]{\footnotesize Seite \thepage~von~\pageref{lastpage}}%
}
\makeatletter
\let\ps@plain\ps@default
\let\ps@first@page\ps@default
\makeatother
%\setmainfont[Numbers={OldStyle},Ligatures={Common}]{OfficinaSansITCStd}
\setmainlanguage{german}
\definecolor{markcolor}{cmyk}{0.8,.55,0,0.6}
\definecolor{black}{rgb}{.0,.0,.0}
\newcommand{\markkey}[1]{\color{markcolor}{\bfseries\ #1}\color{black}\hspace{1ex}}
\newcommand{\normalspacing}{\setstretch{1.5}}%
\newcommand{\bkbrk}{|\hspace{1ex}}
\backaddress{Vorname Nachname\hspace{2ex}\bkbrk\\Straße 1\hspace{2ex}\bkbrk\\11000 City}
\newcommand\marginalien{
\vspace{7em}
\scriptsize
\raggedleft
%\normalspacing
%\raggedright
Vorname Nachname\\
Straße 1\\
11000 City\\[1em]
\markkey{E-Mail}[email protected]\\
}
\nobackaddressrule
\signature{Vorname Nachname}
%\place{City}
%\date{2007-10-11}
%\yourmail{}
%\sign{unsere zeichen, unsere Nachricht von}
%\phone{tel}
% \writer{Sachbearbeiter}
\centeraddress
\bottomtext{bottom text}
\nowindowrules
%\windowrules
% Faltmarkierungen
%\nowindowtics
\windowtics
% entsprechend DIN 676 von 1976
%\disabledraftstandard
% entsprechen DIN 676 vom 1991
\enabledraftstandard
%\setaddressllcorner{abstand vom linken rand}
%\setaddressllhpos{abstand vom linken rand}
%\setaddressvpos{abstand vom oberen rand}
%\addresshigh
\addressstd
\subject{\bfseries{Ein Subjekt}}
\begin{document}
\normalspacing
\begin{letter}{Company\\Street 1\\11000 City}
\pagestyle{plain}
\marginpar{\marginalien}
\opening{Sehr geehrter Herr Mustermann,}
\lipsum
\closing{Mit freundlichen Grüßen}
\label{lastpage}
\end{letter}
\end{document}
第一页底部的图像:
第二页底部的图像: