基線網格上第一列具有固定寬度的三列線

基線網格上第一列具有固定寬度的三列線

我正在嘗試格式化簡歷中的工作標題,以滿足以下限制:

  • company name對齊並佔據固定寬度,例如2.5cm。
  • 它們job titles都彼此左對齊。
  • 年份在 處右對齊\textwidth
  • 文字位於基線網格上。

就像這樣:

Work Experience

Bar Company        Job Title                 2017-present
Job description....

Foo Company        Job Title                    2015-2017
Job description....

這可以透過中描述的表來實現用於履歷輸入的三個固定寬度列。表格的問題在於,與基線網格對齊比使用單行段落更困難。

這是我想寫的內容:

\hbox to 4cm {Bar Company} Job Title \hfill 2017-present

完整的上下文和 MWE:

我使用帶有兩列基線網格的上下文。 \WorkHeading\WorkHeadingTable是相關指令。

\setuppapersize[letter]
\setuplayout[grid=yes]

\define\GoldenRatio{0.61996}
\defineparagraphs[GoldenColumns][n=2]
\setupparagraphs[GoldenColumns][1][width=\GoldenRatio\textwidth]
\define[3]\WorkHeading{#1 -- #2 \hfill #3}

\starttexdefinition WorkHeadingTable #1#2#3
  \startembeddedxtable[option=stretch,loffset=-1.8pt,roffset=-2.1pt]
    \startxrow
      \startxcell[width=4cm] #1 \stopxcell
      \startxcell #2 \stopxcell
      \startxcell \hfill #3 \stopxcell
    \stopxrow
  \stopembeddedxtable
\stoptexdefinition

\showgrid
\showframe

\starttext
\startGoldenColumns
Elon Musk
\blank[3*line]

Work Experience

\WorkHeading{Tesla}{CEO}{2016-present}
\startitemize
\item Nunc eleifend leo vitae magna. Mauris ac felis vel velit tristique
  imperdiet.  Vestibulum convallis, lorem a tempus semper, dui dui euismod elit,
  vitae placerat urna tortor vitae lacus.
\item Aliquam feugiat tellus ut neque.
\stopitemize

\WorkHeadingTable{Solar City}{CEO}{2012-present}
\startitemize
\item Nunc eleifend leo vitae magna. Aenean in sem ac leo mollis blandit.
\item Donec at pede.
\stopitemize

\GoldenColumns
[email protected]
\blank[3*line]
Rockets

Praesent augue. Nam vestibulum accumsan nisl.  Donec at pede.Praesent fermentum
tempor tellus.
\stopGoldenColumns
\stoptext

最小工作範例(Context Mkiv)

答案1

在這一點上,桌子是不必要的,而且也感覺有點矯枉過正。您自己已經提出了一個解決方案,即

\hbox to 4cm {Bar Company} Job Title \hfill 2017-present

然後您注意到,這會跨行分割。原因是在 TeX 中,一個框不會開始一個新段落。水平框將被附加到現有的垂直清單中,並且只有J「職位名稱」字母將開始段落。因此,您必須手動在框框之前開始段落。\dontleavehmode如果您想要抑制縮排框(如果您有非零值\parindent),則可以透過使用 或 來執行此操作\noindent

此外,我假設您希望水平盒子的內容左對齊。這可以透過在內容右側插入填充膠來輕鬆實現,即\hbox to 4cm{Bar Company\hfil}。否則,字間空間將被拉伸,使得內容填充整個框,這在這種情況下可能是不想要的。 (您還會在日誌中收到一條有關 hbox 未滿的訊息)。

\setuppapersize[letter]
\setuplayout[grid=yes]

\define\GoldenRatio{0.61996}
\defineparagraphs[GoldenColumns][n=2]
\setupparagraphs[GoldenColumns][1][width=\GoldenRatio\textwidth]
\define[3]\WorkHeading{%
  \dontleavehmode
  \hbox to 4cm{#1\hfil} #2 \hfill #3}

\showgrid
\showframe

\starttext
\startGoldenColumns
Elon Musk
\blank[3*line]

Work Experience

\WorkHeading{Tesla}{CEO}{2016-present}
\startitemize
\item Nunc eleifend leo vitae magna. Mauris ac felis vel velit tristique
  imperdiet.  Vestibulum convallis, lorem a tempus semper, dui dui euismod elit,
  vitae placerat urna tortor vitae lacus.
\item Aliquam feugiat tellus ut neque.
\stopitemize

\WorkHeading{Solar City}{CEO}{2012-present}
\startitemize
\item Nunc eleifend leo vitae magna. Aenean in sem ac leo mollis blandit.
\item Donec at pede.
\stopitemize

\GoldenColumns
[email protected]
\blank[3*line]
Rockets

Praesent augue. Nam vestibulum accumsan nisl.  Donec at pede.Praesent fermentum
tempor tellus.
\stopGoldenColumns
\stoptext

在此輸入影像描述

相關內容