对齐文本和徽标

对齐文本和徽标

我正在尝试找到一种方法,将徽标放置在页面的左上角,在同一高度并将我的信息(例如姓名、地址)右对齐。其余文本必须放在其下方。

我不知道该怎么做。我的问题是

  1. 我的信息(姓名)与徽标不在同一高度;
  2. 文本只是从我的名字下方开始,位于徽标的右侧,而不是下方。

我看到的大多数搜索结果都是关于页眉和页脚的,而我并不是在寻找这些。

我的代码:

\begin{wrapfigure}{l}{0.5\textwidth}
  \begin{center}
    \includegraphics[width=0.5\textwidth]{D:/SkyDrive/Backup/Latex/logo.jpg} 
  \end{center}
\end{wrapfigure}

\begin{flushright}
    \noindent name\\
    info\\
    \today
\end{flushright}

Text

答案1

这看起来像是一种粗鲁的方法,但它相当简单:

enter image description here

\documentclass{article}
\usepackage{array,graphicx,lipsum}% http://ctan.org/pkg/{array,graphicx,lipsum}
\begin{document}
\noindent\begin{tabular}{@{}p{.5\textwidth}@{}>{\raggedleft\arraybackslash}p{.5\textwidth}@{}}
   & My name \\ & My street \\ & My city \\ & My postal code \\ 
  \smash{\includegraphics[height=5\normalbaselineskip]{example-image-a}} & My country
\end{tabular}

\lipsum
\end{document}

我已将图像的高度设置为与姓名/地址部分的高度相同(5 行或\normalbaselineskips)。将图像插入到地址的最后一行,可让您\smash避免在 中进行任何垂直调整tabular

解决方案中涉及的一些组件:

  • \noindent:删除了开始段落时插入的常规段落缩进(请注意,这种情况发生在第一个段落乱码图片下方的段落);
  • @{}tabular列规范中,删除了通常在相邻列之间插入的列间间距,例如。 a 内部的这个空间tabular由 给出\tabcolsep
  • >{<stuff>}:这是array包裹插入<stuff> 单元格的开头。<{<stuff>}还提供了类似的方法(但未使用)来插入<stuff> 单元格末尾。我插入\raggedleft以使单元格内容与右边距齐平。还有一个,它是使用和指令\arraybackslash时的校正工具,可重新建立;的功能><\\
  • p{.5\textwidth}:两列均tabular设置为p文本块模式/样式,宽度为.5\textwidth文本块宽度的一半。
  • \smash:删除对象的任何垂直高度,否则会影响行之间的线间隙tabular
  • \normalbaselineskip\baselineskip:如果需要,环境外部使用的常规方法tabular将被捕获\normalbaselineskip以供在内部使用tabular。我将图像设置为最多 5 行,因为我的个人详细信息跨越了 5 行。

相关内容