文本在特定位置对齐

文本在特定位置对齐

在此处输入图片描述

我想写一个像上面图片那样的句子。
但我不想使用\hspace(每次我都必须留出空格)、itemize(数字空格对我来说很丑)和缩进(每次我都必须换行)。
有没有什么聪明又简单的方法可以实现这个结果?

答案1

一个非正统的宏,甚至避免使用花括号。语法是\mymacro whatever: whatever |,没有别的。因为将不在具有定义结束的环境内,所以如果您想在下面创建另一个列表,则由您重置计数器。

姆韦

\documentclass{article}
\usepackage{lipsum} % dummy text
\usepackage{linegoal} 
\newcounter{mycount}
\def\myitem#1:#2|{\par\noindent\addtocounter{mycount}{1}
(\arabic{mycount})\quad #1: \parbox[t]{\linegoal}{#2}\smallskip}
\begin{document}
\myitem Terms of trade effect: \lipsum[1][1-3] |% note the ending "|" 
\myitem Firm delocation effect: \lipsum[1][1-2] | 
\myitem Profit shifting effect: \lipsum[1][1-2] |
\end{document}

但也许使用固定的悬挂缩进会更优雅。表格的问题在于不能将项目的描述与项目标题重叠,就像在description环境中一样,当标题很长或描述空间很小时,这可能会非常方便。在这种情况下,可以\myitem 更简单,删除奇怪的结束符号:

姆韦

\documentclass{article}
\usepackage{lipsum} % dummy text
\newcounter{mycount}
\def\myitem#1:#2{\par\noindent
\addtocounter{mycount}{1}
\hangindent10em(\arabic{mycount})\quad\textbf{#1}:\quad #2 }
\begin{document}
\myitem Terms of trade effect: \lipsum[1][1-3]
\myitem Firm delocation effect: \lipsum[2][1-2] 
\myitem Profit shifting effect: \lipsum[3][1-2]
\end{document}

答案2

我不知道为什么您不考虑在第三列自动换行的基于表格的设置。

在此处输入图片描述

\documentclass{article}
\usepackage{tabularx} % for 'tabularx' environment and 'X' column type
\usepackage{ragged2e} % for '\RaggedRight' macro
\newcolumntype{L}{>{\RaggedRight}X} % no full justification
\usepackage{lipsum} % filler text

\begin{document}

\noindent
\begingroup % limit the scope of the next instruction to the current group
\setlength\tabcolsep{3pt} % default: 6pt
\begin{tabularx}{\textwidth}{@{} l l L @{}}
(1) & terms of trade effect & \lipsum[1][1-2] \\
(2) & firm delocation effect & \lipsum[2][1-2] \\
(3) & profit shifting effect & \lipsum[3][1-2]
\end{tabularx}
\endgroup

\end{document}

相关内容