自定义文章标题会导致不必要的页面跳过和段落水平跳过

自定义文章标题会导致不必要的页面跳过和段落水平跳过

我正在创建一个简单的模板,供我的学生在作业中使用。它由“文章”文档类组成,但在第一页顶部有一个附加内容。内容声明如下\newcommand

\documentclass{article}
\usepackage{graphicx}
\usepackage{wrapfig}

\newcommand\makeheader{
\begin{wrapfigure}{l}{4\baselineskip}
\includegraphics[height=4\baselineskip]{figures/logo.jpg}
\end{wrapfigure}
University name \\
Institute name \\
Graduation course \\
Course name}

\title{My assignment}
\author{An student }
\date{April 2020}

\begin{document}

\makeheader

\maketitle

Here goes my doc...


\end{document}

会发生三件不良的事情:

  1. 自定义\makeheader力量\maketitle移动到第二页,这是不受欢迎的。

  2. 我的自定义“标题”中的第一个句子(大学名称)错误地水平跳到了右侧。这也是不理想的。

  3. 标题\maketitle 也水平跳到右边。非常不受欢迎。

我该如何改正这 3 种不良行为?

此致。

答案1

一种方法是使用一个漂亮的标题:

姆韦

\documentclass{article}
\usepackage{graphicx,lipsum}
\usepackage{geometry}
\usepackage{fancyhdr}
\fancypagestyle{Univlogo}{%
\renewcommand{\headrulewidth}{0pt}% no header line
\fancyhead[L]{\hspace{-1cm}\includegraphics[height=4\baselineskip]{example-image}
\quad\begin{minipage}[b][4\baselineskip][c]{.5\textwidth}\sffamily
University name \\
Institute name \\
Graduation course \\
Course name
\end{minipage}}}

\newgeometry{margin=1in}

\title{My assignment}
\author{An student }
\date{April 2020}

\begin{document}

\maketitle
\thispagestyle{Univlogo}


Here goes my doc... \lipsum[1]

\end{document}

另一个可能是texpos包:

\documentclass{article}
\usepackage{graphicx,lipsum}
\usepackage[absolute]{textpos}
\def\UniLogo{\begin{textblock}{9}(.5,.5)
\includegraphics[height=4\baselineskip]{example-image}
\quad\begin{minipage}[b][4\baselineskip][c]{.5\textwidth}\sffamily
University name \\
Institute name \\
Graduation course \\
Course name
\end{minipage}
\end{textblock}}


\title{My assignment}
\author{An student }
\date{April 2020}

\begin{document}

\maketitle\UniLogo

Here goes my doc... \lipsum[1]

\end{document}

答案2

tikzpicture这是一个使用及其非常方便的节点的解决方案current page。您需要remember picture访问此节点的选项和overlay选项,以便由 生成的 TeX 框tikzpicture在文档中出现的位置不占用空间。将此命令放在出现时间足够早的段落中,以便位于第一页(参见下面的示例);这样,您就不会干扰标题的位置。由于该机制,\makeheader您需要编译两次。remember picture

注意:如果使用shift={(0cm,0m)}而不是shift={(1.2cm,-1.2cm)},图像的左上角将正好位于页面的左上角(也称为“西北”)。

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning}
\usepackage{graphicx}
\usepackage{lipsum}        % only for the dummy text used here

\newcommand*{\makeheader}{%
  \begin{tikzpicture}[remember picture, overlay]
    \node[inner sep=0, below right, shift={(1.2cm,-1.2cm)}] (logo)
      at (current page.north west)
      {\includegraphics[height=4\baselineskip]{example-image}};
    \node[right=2em of logo, align=left]
      {%
        University name   \\
        Institute name    \\
        Graduation course \\
        Course name
      };
  \end{tikzpicture}%
}

\title{My assignment}
\author{A student}
\date{April 2020}

\begin{document}

\maketitle

\makeheader
Here goes my doc. \lipsum[1]

\end{document}

在此处输入图片描述

相关内容