我们公司对文档进行了新的企业设计,包括带有虚线的页眉和页脚。我实现了所需的布局,但这是一种快速而粗糙的解决方案。这是一个最小的示例:
% !TeX program = lualatex
\documentclass[
a4paper, % Papierformat
twoside, % zweiseitiges Dokument
headings=SMALL, % Größe der Überschriften verkleinern
headings=optiontohead, % ermöglicht Kurzüberschriften
DIV=15, %
twocolumn=true, %
headinclude=true, %
final % Status des Dokuments (final/draft)
]{scrreprt}
\usepackage[german,ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{fontspec}% für Luatex benötigt
\usepackage[automark]{scrlayer-scrpage}
\usepackage{blindtext}
\usepackage[nochapter]{vhistory}
\usepackage{calc}
\usepackage{lastpage}
% Definition von Kopf- und Fußzeilen
\clearpairofpagestyles
\renewcommand*{\headfont}{\normalfont\fontsize{9.5pt}{11.4pt}\selectfont}
\ihead[Musterhandbuch der Musterfirma]{Musterhandbuch der Musterfirma}
\chead[\raisebox{-8mm}{\parbox{\textwidth+3pt}{\dotfill}}]
{\raisebox{-8mm}{\parbox{\textwidth+3pt}{\dotfill}}}
\ohead[Version 2016-\vhCurrentVersion\\vom: \vhCurrentDate]{Version
2016-\vhCurrentVersion\\vom: \vhCurrentDate}
\ofoot[{Seite \thepage/\pageref{LastPage}}]{Seite \thepage/
\pageref{LastPage}}
\cfoot[\parbox{13cm}{\dotfill}]{\parbox{13cm}{\dotfill}}
\refoot[\usebox{\Logo}]{\usebox{\Logo}}
\lofoot[\usebox{\Logo}]{\usebox{\Logo}}
\pagestyle{scrheadings}
\newsavebox{\Logo}
\savebox{\Logo}{\rule{1.8cm}{.7cm}}
\begin{document}
\blinddocument
\onecolumn
\cleardoublepage
\markboth{Versionshistorie}{Versionshistorie}
{\textbf{\large\sffamily Versionshistorie}}
\label{historie}
\begin{versionhistory}
\vhEntry{1.0}{04.03.2016}{XY}{Version 2016 in Kraft gesetzt}
\end{versionhistory}
\end{document}
我的问题是:
我怎样才能将 \headsepline 改为虚线?我的解决方法有一个缺点,就是我不能使用 \chead 插入文本。
在页脚中,虚线的长度是固定的。如果我通过选择另一个 DIV 值来更改页面布局,我必须手动调整线的长度。线与徽标的距离和与页码的距离也不相同。如何才能获得一条填充徽标和页码之间距离的虚线?
\headsepline 的示例:
% !TeX program = lualatex
\documentclass[
a4paper, % Papierformat
twoside, % zweiseitiges Dokument
headings=SMALL, % Größe der Überschriften verkleinern
headings=optiontohead, % ermöglicht Kurzüberschriften
DIV=15, %
twocolumn=true, %
headinclude=true, %
final % Status des Dokuments (final/draft)
]{scrreprt}
\usepackage[german,ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{fontspec}% für Luatex benötigt
\usepackage[automark, headsepline]{scrlayer-scrpage}
\usepackage{blindtext}
\usepackage[nochapter]{vhistory}
\usepackage{calc}
\usepackage{lastpage}
% Definition von Kopf- und Fußzeilen
\clearpairofpagestyles
\renewcommand*{\headfont}{\normalfont\fontsize{9.5pt}{11.4pt}\selectfont}
\ihead[Musterhandbuch der Musterfirma]{Musterhandbuch der Musterfirma}
%\chead[\raisebox{-8mm}{\parbox{\textwidth+3pt}{\dotfill}}]
{\raisebox{-8mm}{\parbox{\textwidth+3pt}{\dotfill}}}
\ohead[Version 2016-\vhCurrentVersion\\vom: \vhCurrentDate]{Version
2016-\vhCurrentVersion\\vom: \vhCurrentDate}
\ofoot[{Seite \thepage/\pageref{LastPage}}]{Seite \thepage/
\pageref{LastPage}}
\cfoot[\parbox{13cm}{\dotfill}]{\parbox{13cm}{\dotfill}}
\refoot[\usebox{\Logo}]{\usebox{\Logo}}
\lofoot[\usebox{\Logo}]{\usebox{\Logo}}
\pagestyle{scrheadings}
\newsavebox{\Logo}
\savebox{\Logo}{\rule{1.8cm}{.7cm}}
\begin{document}
\blinddocument
\onecolumn
\cleardoublepage
\markboth{Versionshistorie}{Versionshistorie}
{\textbf{\large\sffamily Versionshistorie}}
\label{historie}
\begin{versionhistory}
\vhEntry{1.0}{04.03.2016}{XY}{Version 2016 in Kraft gesetzt}
\end{versionhistory}
\end{document}
答案1
您可以修改图层scrheadings.head.below.line
并使用页面样式或plain.scrheadings.head.below.line
在页面上插入虚线。请注意是 的别名。scrheadings
plain.scrheadings
plain
plain.scrheadings
对于页脚,我会使用\cofoot
和\cefoot
。此命令的星号版本使用 参数作为页面样式scrheadings
和plain.scrheadings
。
\documentclass[
a4paper, % Papierformat
twoside, % zweiseitiges Dokument
headings=small, % Größe der Überschriften verkleinern
headings=optiontohead, % ermöglicht Kurzüberschriften
DIV=15, %
twocolumn=true, %
headinclude=true, %
final, % Status des Dokuments (final/draft)
footheight=20pt,
headheight=22.8pt
]{scrreprt}
\usepackage[german,ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{fontspec}% für Luatex benötigt
\usepackage[automark]{scrlayer-scrpage}
\usepackage{blindtext}
\usepackage[nochapter]{vhistory}
\usepackage{calc}
\usepackage{lastpage}
% Definition von Kopf- und Fußzeilen
\clearpairofpagestyles
\setkomafont{pageheadfoot}{\normalfont\fontsize{9.5pt}{11.4pt}\selectfont}
\ModifyLayer[
addvoffset=.8pt,
contents={%
\normalfont\usekomafont{pageheadfoot}\usekomafont{pagehead}%
\usekomafont{headsepline}\dotfill
}
]{scrheadings.head.below.line}
\RedeclareLayer[
clone=scrheadings.head.below.line
]{plain.scrheadings.head.below.line}
\ihead*{Musterhandbuch der Musterfirma}
\chead[Text auf plain Seiten]{\headmark}
\ohead*{Version 2016-\vhCurrentVersion\\vom: \vhCurrentDate}
\renewcommand*\pagemark{%
\usekomafont{pageheadfoot}Seite\ \thepage/\pageref{LastPage}%
}
\newsavebox{\Logo}
\savebox{\Logo}{\rule{1.8cm}{.7cm}}
\cofoot*{%
\raisebox{-.5\height}{\usebox{\Logo}}%
\qquad\dotfill\qquad%
\raisebox{\dimexpr-.5\height+.5\depth\relax}{\pagemark}%
}
\cefoot*{%
\raisebox{\dimexpr-.5\height+.5\depth\relax}{\pagemark}%
\qquad\dotfill\qquad%
\raisebox{-.5\height}{\usebox{\Logo}}%
}
\begin{document}
\blinddocument
\onecolumn
\cleardoublepage
\addsec[tocentry={}]{Versionshistorie}
\label{historie}
\begin{versionhistory}
\vhEntry{1.0}{04.03.2016}{XY}{Version 2016 in Kraft gesetzt}
\end{versionhistory}
\end{document}
SMALL
请注意的值headings
不存在。您必须使用small
或normal
或big
。我已放大footheight
和headheight
以避免出现警告。
答案2
我成功地用这个解决方案解决了第一个问题,但也很脏。
\chead{\parbox[c][16mm]{\textwidth+3pt}{\vspace*{12pt} \ \\ \centering{Text}}\\ {\parbox{\textwidth+3pt}{\dotfill}}
}
硬编码\
可防止出现无行到端错误。