将图像放置在标题中的多行文本旁边

将图像放置在标题中的多行文本旁边

我正在尝试使用 LaTeX 重新创建在 Word 中创建的以下标题

期望输出

我尝试使用 fancyhdr 包并创建如下表来实现此目的

\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{} % sets both header and footer to nothing
\renewcommand{\headrulewidth}{0pt}
\fancyhead[L]{ 
\begin{tabular}{l l}
\multirow{3}{*}{\includegraphics[scale=1]{template/header_left}} & {\huge Big text} \\
& Small text \\
\multicolumn{2}{l}{\includegraphics[scale=1]{template/horizontal}}
\end{tabular}}

然而,结果却是这样的:

Latex 输出

这是用于构建标题的两个图像:

图片 1:水平

图片 2:

左边

答案1

对于这些类型的构造,这个makecell包通常很方便。

\documentclass{article}
\usepackage{lipsum}
\usepackage{makecell}
\usepackage{graphicx}
\usepackage{fancyhdr}
\setlength{\headheight}{64pt}
\pagestyle{fancy}
\fancyhf{} % sets both header and footer to nothing
\renewcommand{\headrulewidth}{0pt}
\fancyhead[L]{ 
  \mbox{\makecell[cl]{\includegraphics[scale=1]{header_left}}}
  \makecell[cl]{{\huge Big text} \\[2pt] ~Small text} \\[-9pt]
  {\includegraphics[width=\headwidth]{horizontal}}}

\begin{document}
\lipsum
\end{document}

在此处输入图片描述

答案2

这使用\saveboxes 和\parboxes 来构造标题。请注意 fancyhdr 对 敏感\headheight

\documentclass[a4paper,11pt]{article}
\usepackage{xcolor}
\usepackage{graphicx}
% create header
\sbox1{\parbox[b]{0.5\textwidth}{{\huge Big text}\par Small texty \hrule height0pt}}% move baseline to bottom
\newsavebox{\myheader}
\savebox{\myheader}{\parbox[b]{\textwidth}{\includegraphics[height={\dimexpr \ht1+\dp1+2pt}]{example-image}%
  \hspace{2pt}\raisebox{2pt}{\box1}% add 2pt gap to left and bottom
  \color{red}\hrule height2pt}}
% use header
\usepackage[headheight=\ht\myheader]{geometry}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{} % sets both header and footer to nothing
\renewcommand{\headrulewidth}{0pt}
\fancyhead[L]{\usebox\myheader}

\begin{document}
The content of my thesis goes here
\end{document}

请注意,每行(框)都有顶部、底部和基线。LaTeX 会尝试将基线分开\baselineskip,但如果两条线连在一起,它会\lineskip在一条线的底部和下一条线的顶部之间添加基线。Tabular 甚至更加复杂。但是,\hrule不遵循这些规则。

答案3

这是使用彩色规则而不是图形文件的版本。

\documentclass{article}

\usepackage{graphicx}
\usepackage{fancyhdr}
\usepackage{lipsum}
\usepackage[scaled]{helvet}
\usepackage[T1]{fontenc}
\renewcommand\familydefault{\sfdefault}

\usepackage[dvipsnames]{color}

\makeatletter
\let\old@rule\@rule
\def\@rule[#1]#2#3{\textcolor{rulecolor}{\old@rule[#1]{#2}{#3}}}
\makeatother

\definecolor{rulecolor}{named}{BrickRed}
\setlength{\headheight}{32pt}

\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\fancyhead[L]{ 
\rule{2em}{4em}\hspace{2pt}\rule{1em}{4em}\hspace{2pt}\rule{0.25em}{4em} \hspace{3pt}
\raisebox{5mm}[4mm][2mm]{
\begin{tabular}{l}
\huge Big Text \\
\textcolor[rgb]{0.8,0.8,0.8}{Small text}
\end{tabular}
}\vspace{-0.8em}
\rule{1.2\textwidth}{1em} \hspace{3pt}
}

\begin{document}

\noindent \lipsum

\end{document}

它看起来会像这样。所有长度都可以定制。

有规则

相关内容