将图像和文本放在同一标题行中

将图像和文本放在同一标题行中

我在乳胶代码中有一个标题部分,我想将图像放在左侧。页面位于中心。

\title{\vspace{-15mm}
\fontsize{25pt}{10pt}\selectfont
\textbf{\hspace*{-1pt} 
\includegraphics[width=0.15\textwidth]{./img/logo.png}\hfill 
\hspace*{-100pt} This Text}}

但是这段代码之后,“此文本”将移到左侧(介于左侧和中间之间)如何正确放置它们?谢谢关注...

答案1

抱歉,现在已更正。\hfill两边的 中的一个可以删除,但现在更容易理解如何获得居中:一个隐藏的 加上一个显式的 ,用右边的两个 进行更正。

\documentclass{article}
\usepackage{graphicx}
\usepackage{lipsum}

\begin{document}

\title{\vspace{-15mm}
\fontsize{25pt}{10pt}\selectfont
\textbf{%\hspace*{-1pt} 
%\includegraphics[width=0.15\textwidth]{./img/logo.png}\hfill 
\makebox[0pt][l]{\includegraphics[width=0.15\textwidth]{it}}
\hfill
This Text \hfill\hfill
%\hspace*{-100pt} This Text}}
}}

\maketitle

\lipsum

\end{document}

在此处输入图片描述

答案2

使用该包还有另一个答案tcolorbox

我的答案构建了一个名为的并排框imagetextbox,它将图像放在其左侧(上)侧,将文本放在右侧(下)侧。

该宏\imagetext以一张图片和文本作为参数。如果需要,所有尺寸都可以调整。

\documentclass{article}
\usepackage{graphicx}
\usepackage{lipsum,lmodern}
\usepackage[skins]{tcolorbox}

\newtcolorbox{imagetextbox}[3][]{%
  before=\par\bigskip\noindent,after=\par\medskip,
  blank,sidebyside,center lower,
  fontlower=\fontsize{25pt}{28pt}\selectfont\bfseries,
  width=\textwidth-#2-#3,
  lefthand width=#2,
  sidebyside gap=#3,#1}

\newcommand{\imagetext}[3][0.15]{%
\begin{imagetextbox}[]{#1\textwidth}{3mm}%
  \includegraphics[width=\linewidth]{#2}%
  \tcblower%
   #3%
\end{imagetextbox}}

\begin{document}
\imagetext{example-image-a}{This Text}
\lipsum[1]

\imagetext{example-image-b}{This title\\has two lines}
\lipsum[2]

\imagetext{example-image-c}{This title\\has\\three lines}
\lipsum[3]

\imagetext[0.25]{example-image-a}{Larger image}
\lipsum[4]

\imagetext[0.35]{example-image-a}{Even larger image}
\lipsum[5]

\end{document}

在此处输入图片描述

在此处输入图片描述

答案3

如果标题只有一行,那么应该可以这样做:

\documentclass{article}
\usepackage{lmodern}
\usepackage{graphicx}

\begin{document}

\author{A. U. Thor}
\title{%
  \fontsize{25}{32}\bfseries % boldface 25pt
  \makebox[\textwidth][s]{%
    \makebox[0pt][l]{\includegraphics[width=0.15\textwidth]{duck}}%
    \hfill
    This text%
    \hfill
  }%
}

\maketitle

\end{document}

诀窍是让图像不占用空间。我使用一个\textwidth宽框,其中的内容居中,左右没有添加填充:\makebox[\textwidth][s]{...}。其中的图像设置为

\makebox[0pt][l]{...}

所以 TeX 会假设该框不占用宽度。

在此处输入图片描述

由于标题只有两行,因此tabular最简单的解决方法可能是:

\documentclass{article}
\usepackage{lmodern}
\usepackage{graphicx}

\begin{document}

\author{A. U. Thor}
\title{%
  \fontsize{25}{32}\bfseries % boldface 25pt
  \makebox[\textwidth][s]{%
    \makebox[0pt][l]{%
      \includegraphics[width=0.15\textwidth]{duck}}%
    \hfill
    \begin{tabular}[b]{@{}c@{}}
    This title\\
    has two lines
    \end{tabular}%
    \hfill
  }%
}

\maketitle

\end{document}

在此处输入图片描述

相关内容