从左边距开始制表*指定点

从左边距开始制表*指定点

我有一个 tabular* 对象,它从最左边距开始。我需要使用 tabular* 对象的方法来实现这\begin{itemize}[leftmargin=32pt]}一点,它使它从距左边距 32pts 的水平间距开始。

代码

\documentclass[letterpaper]{article}    % Paper Size
\usepackage[margin=0.25in]{geometry}
\raggedbottom
\raggedright

\newcommand{\resumeProjectSubheading}[3]{
    \begin{tabular*}{\textwidth}{l @{\extracolsep{\fill}} r}
        \textbf{#1 -} \textsc{#2 $\sim$} & \textit{\small #3} \\
    \end{tabular*}\vspace{-7pt}
}
\begin{document}
\resumeProjectSubheading
{TITLE}{Subtitle}{Start \emph{|} End}
\end{document}

渲染

第一行是代码实际执行的结果。我需要下面的一行是表格的移位版本。我尝试了多种方法来实现这一点,但都没有成功。

渲染器

答案1

您可以将32pt空格作为第一列之前的列间空格,如下所示:

\begin{tabular*}{\textwidth}{@{\hspace{32pt}} l @{\extracolsep{\fill}} r}
    ...
\end{tabular*}
\documentclass[letterpaper]{article}
\usepackage[margin=0.25in]{geometry}

\newcommand{\resumeProjectSubheading}[3]{% <---- Better use this
  \noindent
  \begin{tabular*}{\textwidth}{@{\hspace{32pt}} l @{\extracolsep{\fill}} r}
      \textbf{#1 ---} \textsc{#2 $\sim$} & \textit{\small #3} \\
  \end{tabular*}\par\vspace{-7pt}% cleaner to use \par before \vspace
}

\begin{document}

\raggedbottom
\raggedright

\resumeProjectSubheading{TITLE}{Subtitle}{Start \slash\ End}

\end{document}

在此处输入图片描述

答案2

借助 newlength,您可以轻松设置、调整和更改文档中某处所需的缩进,并且表格的对齐方式和宽度会自动调整到指定的缩进:

在此处输入图片描述

\documentclass[letterpaper]{article}    % Paper Size
\usepackage[margin=0.25in]{geometry}
\raggedbottom
\raggedright

\newlength{\mytabintent}

\newcommand{\resumeProjectSubheading}[3]{
    \hspace*{\mytabintent}\begin{tabular*}{\dimexpr\textwidth-\mytabintent}{l @{\extracolsep{\fill}} r}
        \textbf{#1 -} \textsc{#2 $\sim$} & \textit{\small #3} \\
    \end{tabular*}\vspace{-7pt}
}

\begin{document}
\setlength{\mytabintent}{32pt}
\resumeProjectSubheading
{TITLE}{Subtitle}{Start \emph{|} End}

\setlength{\mytabintent}{0pt}
\resumeProjectSubheading
{TITLE}{Subtitle}{Start \emph{|} End}

\setlength{\mytabintent}{50pt}
\resumeProjectSubheading
{TITLE}{Subtitle}{Start \emph{|} End}

\end{document}

相关内容