无法使用 \maketitle 来换行 \title - 使用自定义标题包

无法使用 \maketitle 来换行 \title - 使用自定义标题包

我想使用为我的大学制作的标题页包ku-forside,可以在这里

该网站是丹麦语的,因此我将把说明(简要地)翻译成英语:点击“Zip-fil med ku-forside pakken”以 .zip 文件形式下载包,需要将其解压到 TEXMF\tex\latex(我使用 MikTeX,即 MikTeX\tex\latex)。更新 FNDB。

现在,我的标题太长,一行都写不完,需要分成多行。该包破坏了自动换行功能,这种\maketitle功能非常漂亮,而且不允许我手动使用 换行\\。为了更好的措施,该包会转换\title为 丹麦语\titel\author再转换为 丹麦语\forfatter等。

也许您只需查看 ku-forside.sty(部分缩短为仅包含我使用的选项,即“titelside”),然后使用我的 MWE 重现该问题(如下)即可知道导致问题的原因:

% KU-forside pakke. Forsider til opgaver skrevet på Københavns Universitet
% Skrevet af Christian Aastrup. Designet af forsiderne følger det på http://www.ku.dk/designmanual
%
\ProvidesPackage{ku-forside}[2007/07/07 v1.0 Frontpages with University of Cph. logos]
%
%Definerer Standard SPROG/AFDELING/FARVE
\def\SPROG{da}\def\FARVE{farve}\def\AFDELING{nat}\def\FORSIDE{titelside}
%
% Laver SPROG-mulighederne til 'if's
\newif\if@en \newif\if@da
%
% Laver AFDELINGS-mulighederne til 'if's
\newif\if@ku   \newif\if@farma \newif\if@hum
\newif\if@jur  \newif\if@life  \newif\if@nat
\newif\if@samf \newif\if@sund  \newif\if@teo
%
% Laver FARVE-mulighederne til 'if's
\newif\if@farve \newif\if@sh
%
% Laver FORSIDE-mulighederne til 'if's
\newif\if@titelside \newif\if@stor \newif\if@lille
%
\newif\if@babel \DeclareOption{babel}{\@babeltrue}
%
% Erklærer sprogene som 'options' i pakke-kaldet
\DeclareOption{en}{\@entrue} \DeclareOption{da}{\@datrue}
%
% Erklærer afdelingerne som 'options' i pakke-kaldet
\DeclareOption{ku}{\@kutrue}     \DeclareOption{farma}{\@farmatrue} \DeclareOption{hum}{\@humtrue}
\DeclareOption{jur}{\@jurtrue}   \DeclareOption{life}{\@lifetrue}   \DeclareOption{nat}{\@nattrue}
\DeclareOption{samf}{\@samftrue} \DeclareOption{sund}{\@sundtrue}   \DeclareOption{teo}{\@teotrue}
%
% Erklærer farverne som 'options' i pakke-kaldet
\DeclareOption{farve}{\@farvetrue} \DeclareOption{sh}{\@shtrue}
%
% Erklærer forsidemulighederne som 'options' i pakke-kaldet
\DeclareOption{lille}{\@lilletrue} \DeclareOption{stor}{\@stortrue}
\DeclareOption{titelside}{\@titelsidetrue}
%
\ProcessOptions\relax
%
% Definerer hvad der skal ske når sprogene er TRUE
\if@en \def\SPROG{en} \fi \if@da \def\SPROG{da} \fi
%
% Definerer hvad der skal ske når afdelingerne er TRUE
\if@ku   \def\AFDELING{ku}   \fi \if@farma \def\AFDELING{farma} \fi \if@hum \def\AFDELING{hum} \fi
\if@jur  \def\AFDELING{jur}  \fi \if@life  \def\AFDELING{life}  \fi \if@nat \def\AFDELING{nat} \fi
\if@samf \def\AFDELING{samf} \fi \if@sund  \def\AFDELING{sund}  \fi \if@teo \def\AFDELING{teo} \fi
%
% Definerer hvad der skal ske når farverne er TRUE
\if@sh \def\FARVE{sh} \fi \if@farve \def\FARVE{farve} \fi
%
% Definerer hvad der skal ske når de forskellige forsidemuligheder er TRUE
\if@stor \def\FORSIDE{stor} \fi \if@lille \def\FORSIDE{lille} \fi
\if@titelside \def\FORSIDE{titelside} \fi
%
\def\OPGAVE{$\backslash$opgave$\{\ldots\}$}
\def\FORFATTER{$\backslash$forfatter$\{\ldots\}$ el. $\backslash$author$\{\ldots\}$ }
\def\TITEL{$\backslash$titel$\{\ldots\}$ el. $\backslash$title$\{\ldots\}$}
\def\UNDERTITEL{$\backslash$undertitel$\{\ldots\}$}
\def\VEJLEDER{$\backslash$vejleder$\{\ldots\}$}
\def\AFLEVERINGSDATO{$\backslash$dato$\{\ldots\}$ el. $\backslash$date$\{\ldots\}$}
%
\renewcommand{\author}[1]{\def\FORFATTER{#1}}
\renewcommand{\title}[1]{\def\TITEL{#1}}
\renewcommand{\date}[1]{\def\AFLEVERINGSDATO{#1}}
%
\newcommand{\opgave}[1]{\def\OPGAVE{#1}}
\newcommand{\forfatter}[1]{\def\FORFATTER{#1}}
\newcommand{\titel}[1]{\def\TITEL{#1}}
\newcommand{\undertitel}[1]{\def\UNDERTITEL{#1}}
\newcommand{\vejleder}[1]{\def\VEJLEDER{#1}}
\newcommand{\dato}[1]{\def\AFLEVERINGSDATO{#1}}
%
% Pakker nødvendige for at sætte forsiden op %
%
%\RequirePackage[OT2,OT4]{fontenc}
\RequirePackage{eso-pic,graphicx,fix-cm,ae,aecompl,ifthen}         %
%\RequirePackage[usenames]{color}
\RequirePackage{color} %
%% BABEL-option: Undersøger det erklærede sprog og sætter pakken Babel derefter %%
\if@babel
\ifthenelse{\equal{\SPROG}{en}}{\RequirePackage[danish,english]{babel}}{} % Engelsk ordeling, overskrifts- og kapitel struktur   %
\ifthenelse{\equal{\SPROG}{da}}{\RequirePackage[english,danish]{babel}}{} % Dansk ordeling, overskrifts- og kapitel struktur     %
% Bemærk at begge sprog indlæses. Rækkefølgen er vigtig, idet det er det sidste sprog som dokumnetet generelt sættes i.          %
% Det andet sprogs orddeling mm. kan man få fat i ved at skrive \selectlanguage{sprog} i brødteksten                             %
\fi
%
%% FORSIDEN DEFINERES:  %
%
% Mulighed: titelside
\ifthenelse{\equal{\FORSIDE}{titelside}}{
\def\tyk{\fontfamily{phv}\fontseries{bx}\selectfont} %Bold extended                                                              %
\def\tynd{\fontfamily{phv}\fontseries{sb}\selectfont} % Semi-bold                                                                %
\def\maketitle{\thispagestyle{empty}                                                                                             %
\AddToShipoutPicture*{\put(0,0){\includegraphics*[viewport=0 0 700 600]{\AFDELING-\FARVE}}}%                                     %
\AddToShipoutPicture*{\put(0,602){\includegraphics*[viewport=0 600 700 1600]{\AFDELING-\FARVE}}}%                                %
\AddToShipoutPicture*{\put(0,0){\includegraphics*{\AFDELING-\SPROG}}}%                                                           %
\AddToShipoutPicture*{\put(50,583.5){\fontsize{20 pt}{22 pt} \tyk \OPGAVE  }} %                                                  %
\AddToShipoutPicture*{\put(50,555.3){\fontsize{14 pt}{16 pt} \tynd \FORFATTER  }} %                                              %
\AddToShipoutPicture*{\put(50,499){\fontsize{22 pt}{24 pt} \tynd \TITEL  }} %                                                    %
\AddToShipoutPicture*{\put(50,480.5){\fontsize{14 pt}{16 pt} \tynd \UNDERTITEL  }} %                                             %
\AddToShipoutPicture*{\put(50,92){\fontsize{11 pt}{12 pt} \tynd \VEJLEDER  }} %                                                  %
\AddToShipoutPicture*{\put(50,66.7){\fontsize{11 pt}{12 pt} \tynd \AFLEVERINGSDATO   }} %                                        %
\phantom{Usynlig, men nødvendig}                                                                                                 %
\newpage \noindent}}{}                                                                                                              

以下是针对我的问题的 MWE:

\documentclass[12pt,letterpaper,usenames]{article}
\usepackage[paperheight=297mm,paperwidth=212mm,margin=2.54cm]{geometry}
\usepackage[round,numbers]{natbib}
\usepackage[babel, titelside, nat,farve, en]{ku-forside}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%               Titel                    %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\titel{A title that is too long for\\ one line: It\newline needs to break, please break} %
\undertitel{} %
\opgave{Bachelor Thesis} % Findes kun under 'titelside'
\forfatter{Mememememememe}%
\dato{\today}%
\vejleder{Supervisor Name} %  Findes kun under 'titelside'

\begin{document}
\maketitle
\end{document} 

答案1

一种解决方法是将标题放在\parbox. 注释中,ae并且ae-compl不应再使用。我还用 替换了\RequirePackage[usenames]{color}\RequirePackage{xcolor}在这种情况下 usenames 是默认的)。此外,正如 cfr 指出的那样,我认为在丹麦不应使用 letterpaper 格式。

\documentclass[12pt]{article}
\usepackage[paperheight=297mm,paperwidth=212mm,margin=2.54cm]{geometry}
\usepackage[round,numbers]{natbib}
\usepackage[babel, titelside, nat, farve, en]{ku-forside}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% Titel %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\titel{\parbox{\linewidth}{A title that is too long for\\ one line: It\\ needs to break, please break}} %
\undertitel{} %
\opgave{Bachelor Thesis} % Findes kun under 'titelside'
\forfatter{Mememememememe}%
\dato{\today}%
\vejleder{Supervisor Name} % Findes kun under 'titelside'

\begin{document}

\maketitle

\end{document} 

在此处输入图片描述

答案2

这可以相当简单地解决问题,但这可能不是最好的方法。\parboxBernard 也建议使用 A 来解决。

我确实遇到了此包的错误,即使包中只包含示例。我认为它可能已经过时了。它无论如何都能编译,但可能会导致问题。color-package 有一个选项冲突,我相信现在其他一些包也添加了这个选项。我通过注释-file\RequirePackage[usenames]{color} %中的行解决了这个问题ku-forside.sty,这应该是一个安全的修复方法。

我可能会告诉负责该模板的人请更新它。

\documentclass[12pt,letterpaper,usenames]{article}
\usepackage[paperheight=297mm,paperwidth=212mm,margin=2.54cm]{geometry}
\usepackage[round,numbers]{natbib}
\usepackage[babel, titelside, nat,farve, en]{ku-forside}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%               Titel                    %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\titel{\parbox{\textwidth}{A title that is too long for one line: It\\ needs to break, please break}} %
\undertitel{} %
\opgave{Bachelor Thesis} % Findes kun under 'titelside'
\forfatter{Mememememememe}%
\dato{\today}%
\vejleder{Supervisor Name} %  Findes kun under 'titelside'

\begin{document}
\maketitle

\end{document} 

在此处输入图片描述

相关内容