将文本放置在图形侧面定义的垂直位置

将文本放置在图形侧面定义的垂直位置

我想在定义(= 用数字设置,而不仅仅是“底部”、“中心”或“顶部”)图形侧面的垂直位置。我设法在侧面插入文本,但我不知道如何设置垂直位置。理想情况下,我想在同一侧添加不同的文本行,每行都有其位置。

这是我所做的:

\documentclass{article}
\begin{document}

\begin{figure}[h]
text on the left side
\includegraphics[width=0.5\textwidth]{image}
\end{figure}

\end{document}

或者,我可以在表格中插入文本和图形,但我不知道如何设置文本的垂直位置:

\documentclass{article}
\usepackage[demo]{graphicx}
\begin{document}

\begin{center}
\begin{tabular}{cc}   
text on the left & \includegraphics[width=0.5\textwidth]{image}
\end{tabular}
\end{center} 

\end{document}

答案1

您可以使用法线tabular作为图像左侧的文本,并通过指定每个换行符后的距离来\\ [<some v. distance>]控制文本的垂直位置。由于图片通常放置在基线上方,因此您需要[t]adjustbox包中指定选项,以便顶部文本行与图像的顶部行一起调整。

\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage[export]{adjustbox}
\begin{document}

\begin{center}
\begin{tabular}[t]{r}
  text on the left1 \\[.5cm]
  text on the left2 \\[.5cm]
  text on the left3 \\
  text on the left4 \\[.5cm]
  text on the left5 
\end{tabular}
\includegraphics[width=0.5\textwidth,valign=t]{image}
\end{center} 

\end{document}

在此处输入图片描述

另一种选择是使用 TiZ 喜欢这个:

\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}

\begin{center}    
\begin{tikzpicture}
\node (p) {\includegraphics[width=0.5\textwidth]{image}};
\node [left] at ($(p.north west)!.1!(p.south west)$) {text on the left1};
\node [left] at ($(p.north west)!.3!(p.south west)$) {text on the left2};
\node [left] at ($(p.north west)!.5!(p.south west)$) {text on the left3};
\node [left] at ($(p.north west)!.7!(p.south west)$) {text on the left4};
\node [left] at ($(p.north west)!.9!(p.south west)$) {text on the left5};
\end{tikzpicture}    
\end{center}

\end{document}

具有类似(或更好)的输出:

在此处输入图片描述

答案2

不使用 TikZ 或tabular环境,可以使用环境将页面拆分为两个子页面。然后,可以使用经典的间距和定位命令、、、、等minipage设置文本的位置。对于您的示例,可以编写代码vspacehspacecenteringflushleftflushright

\documentclass{article}
\usepackage[demo]{graphicx}
\begin{document}

\begin{minipage}[b]{0.5\textwidth}
    \flushright
    text on the left 1

    text on the left 2

    \vspace{1em}
    text on the left 3
\end{minipage} 
\begin{minipage}{0.5\textwidth}
    \flushleft
    \includegraphics[]{image}
\end{minipage}

\end{document}

并获得以下输出:

在此处输入图片描述

相关内容