
ここでLaTeXで履歴書を作成しようとしています。テンプレートを見つけました。https://github.com/btskinner/tex_cv/blob/master/cv.tex私が理解できないのは、以下の例では、コードでは 2 つのテーブルを揃える必要があるのに、なぜ 2 つのテーブルが揃えられていないのかということです。私の場合は次のようにコンパイルされます。
2020 と XXXX、および「Something, somwhere」とテストを揃えるにはどうすればよいですか? ありがとうございます!
\documentclass[11pt]{article}
\newcommand{\recentyear}{1900} % artificially low year to include everything
% ------------------------------------------------------------------------------
% HEADER STUFF (CAN LEAVE ALONE UNLESS YOU WANT TO PERSONALIZE)
% ------------------------------------------------------------------------------
% -------------------------------
% Packages
% -------------------------------
\usepackage[margin=1in]{geometry} % for margins
\usepackage[american]{babel} % for language
% for reference sections
\usepackage{titlesec} % to adjust section headers
\usepackage{tabularx} % for fluid tables
% -------------------------------
% Macros
\newcommand{\RR}{\raggedright\arraybackslash} % left justified
\newcommand{\RL}{\raggedleft\arraybackslash} % right justified
% for tables to keep consistent alignment across sections
\newcolumntype{\twocols}{>{\RR}p{1.25in}>{\RR}X}
\newcolumntype{\threecols}{>{\RR}p{1.25in}>{\RR}X>{\RL}p{1in}}
\begin{document}
\section*{Education}
\begin{center}
\vspace{-1.5em}
\rule{\textwidth}{0.5pt}
\end{center}
\begin{tabularx}{\linewidth}{\threecols}
2020 (expected) &Something, somewhere & Ph.D. \\ % or YYYY (expected)
\end{tabularx}
\section*{Grants and Scholarships}
\begin{center}
\vspace{-1.5em}
\rule{\textwidth}{0.5pt}
\end{center}
\begin{tabularx}{\linewidth}{\threecols}
YYYY & test & bb \\
YYYY - YYYY & Fellowship & \$ AMOUNT \\ % if normal in your field
\end{tabularx}
\end{document}
答え1
私はマクロを使用しますが、tabularx
:
\documentclass[11pt]{article}
\usepackage{array}
% -------------------------------
% Packages
% -------------------------------
\usepackage[margin=1in]{geometry} % for margins
\usepackage[american]{babel} % for language
% for reference sections
\usepackage{titlesec} % to adjust section headers
\usepackage{tabularx} % for fluid tables
\newcommand{\recentyear}{1900} % artificially low year to include everything
\titleformat{\section}
{\bfseries\Large}
{}% no number
{0pt}% no space
{}% the title
[\titlerule]
% ------------------------------------------------------------------------------
% HEADER STUFF (CAN LEAVE ALONE UNLESS YOU WANT TO PERSONALIZE)
% ------------------------------------------------------------------------------
% -------------------------------
% Macros
\newcommand{\twocolsection}[2]{%
\section{#1}
\begin{tabular}[t]{
@{}
wl{1.25in}
>{\raggedright\arraybackslash}p{\dimexpr\textwidth-1.25in-2\tabcolsep}
@{}
}
#2
\end{tabular}\par
}
\newcommand{\threecolsection}[2]{%
\section{#1}
\begin{tabular}[t]{
@{}
wl{1.25in}
>{\raggedright\arraybackslash}p{\dimexpr\textwidth-2.25in-4\tabcolsep}
wr{1in}
@{}
}
#2
\end{tabular}\par
}
\begin{document}
\threecolsection{Education}{
2020 (expected) &Something, somewhere & Ph.D. \\ % or YYYY (expected)
}
\threecolsection{Grants and Scholarships}{
YYYY & test & bb \\
YYYY - YYYY & Fellowship & \$ AMOUNT \\ % if normal in your field
}
\end{document}
特定の CV のデータが収まらない場合に備えて、最初の列と最後の列の幅をパラメーター化することもできます。
tabular
こうすることで、 がタイトルから切り離されてしまうリスクがなくなります。
より洗練されたバージョンでは、列の幅 (1 番目と 3 番目) がパラメータ化されるため、プリアンブルの適切な場所でサイズを変更できます。また\twocolsection
、 とには\threecolsection
オプションの引数があり、これはL
(デフォルト) または でJ
、メイン列の左揃え (右揃え) または両端揃えを指定します。
\documentclass[11pt]{article}
\usepackage[margin=1in]{geometry} % for margins
\usepackage[american]{babel} % for language
\usepackage{titlesec} % to adjust section headers
\usepackage{array}
% customization of sections
\titleformat{\section}
{\bfseries\Large}
{}% no number
{0pt}% no space
{}% the title
[\titlerule]
% main macros
\newlength{\firstcol}
\newlength{\thirdcol}
% helper column types
\newcolumntype{L}[2]{%
>{\raggedright\arraybackslash}p{\dimexpr\textwidth-(#1)-#2\tabcolsep\relax}%
}
\newcolumntype{J}[2]{%
p{\dimexpr\textwidth-(#1)-#2\tabcolsep\relax}%
}
\newcommand{\twocolsection}[3][L]{%
\section{#2}
\begin{tabular}[t]{
@{}
wl{\firstcol}
#1{\firstcol}{2}
@{}
}
#3
\end{tabular}\par
}
\newcommand{\threecolsection}[3][L]{%
\section{#2}
\begin{tabular}[t]{
@{}
wl{\firstcol}
#1{\firstcol+\thirdcol}{4}
wr{\thirdcol}
@{}
}
#3
\end{tabular}\par
}
%%% final customization
\setlength{\firstcol}{1.25in}
\setlength{\thirdcol}{1in}
%%%
\begin{document}
\threecolsection{Education}{
2020 (expected) &Something, somewhere & Ph.D. \\ % or YYYY (expected)
}
\threecolsection{Grants and Scholarships}{
YYYY & test & bb \\
YYYY - YYYY & Fellowship & \$ AMOUNT \\ % if normal in your field
}
\twocolsection{Whatever}{
YYYY & something long to need being split across lines; let's just
write long enough nonsense and see
}
\twocolsection[J]{Whatever}{
YYYY & something long to need being split across lines; let's just
write long enough nonsense and see
}
\end{document}
\addlinespace
各リスト内の項目を垂直方向のスペースで区切ることができる別のバージョン。によって提供される、項目間にのみスペースが追加されるようにするための高レベルのメソッドが必要ですbooktabs
。
\documentclass[11pt]{article}
\usepackage[margin=1in]{geometry} % for margins
\usepackage[american]{babel} % for language
\usepackage{titlesec} % to adjust section headers
\usepackage{array}
\usepackage{booktabs}
% customization of sections
\titleformat{\section}
{\bfseries\Large}
{}% no number
{0pt}% no space
{}% the title
[\titlerule]
% main macros
\newlength{\firstcol}
\newlength{\thirdcol}
% helper column types
\newcolumntype{L}[2]{%
>{\raggedright\arraybackslash}p{\dimexpr\textwidth-(#1)-#2\tabcolsep\relax}%
}
\newcolumntype{J}[2]{%
p{\dimexpr\textwidth-(#1)-#2\tabcolsep\relax}%
}
\ExplSyntaxOn
\NewDocumentCommand{\twocolsection}{ O{L} m +m }
{
\section{#2}
\begin{tabular}[t]{
@{}
wl{\firstcol}
#1{\firstcol}{2}
@{}
}
\scw_cv_table:n { #3 }
\end{tabular}\par
}
\NewDocumentCommand{\threecolsection}{ O{L} m +m }
{
\section{#2}
\begin{tabular}[t]{
@{}
wl{\firstcol}
#1{\firstcol+\thirdcol}{4}
wr{\thirdcol}
@{}
}
\scw_cv_table:n { #3 }
\end{tabular}\par
}
\seq_new:N \l__scw_cv_rows_seq
\tl_new:N \l__scw_cv_last_tl
\cs_new_protected:Nn \scw_cv_table:n
{
% get the rows
\seq_set_split:Nnn \l__scw_cv_rows_seq { \\ } { #1 }
% remove the last item if empty
\seq_pop_right:NN \l__scw_cv_rows_seq \l__scw_cv_last_tl
\tl_if_blank:VF \l__scw_cv_last_tl
{% not blank, reinsert it
\seq_put_right:NV \l__scw_cv_rows_seq \l__scw_cv_last_tl
}
% deliver the rows separated by \\ \addlinespace
\seq_use:Nn \l__scw_cv_rows_seq { \\ \addlinespace }
}
\ExplSyntaxOff
%%% final customization
\setlength{\firstcol}{1.25in}
\setlength{\thirdcol}{1in}
%\setlength{\defaultaddspace}{0.5em} % this is the default in booktabs
%%%
\begin{document}
\threecolsection{Education}{
2020 (expected) &Something, somewhere & Ph.D. \\ % or YYYY (expected)
}
\threecolsection{Grants and Scholarships}{
YYYY & test & bb \\
YYYY - YYYY & Fellowship & \$ AMOUNT \\ % if normal in your field
}
\twocolsection{Whatever}{
YYYY & something long to need being split across lines; let's just
write long enough nonsense and see
}
\twocolsection[J]{Whatever}{
YYYY & something long to need being split across lines; let's just
write long enough nonsense and see
}
\end{document}
のさまざまな値を試してください\defaultaddspace
。
サブセクションも扱うために、コードの重複を避ける少し異なる構文を提案します。
\documentclass[11pt]{article}
\usepackage[margin=1in]{geometry} % for margins
\usepackage[american]{babel} % for language
\usepackage{titlesec} % to adjust section headers
\usepackage{array}
\usepackage{booktabs}
% customization of sections
\titleformat{\section}
{\bfseries\Large}
{}% no number
{0pt}% no space
{}% the title
[\titlerule]
\titlespacing*{\section}{0pt}{*2}{*1}
\titleformat{\subsection}
{\bfseries\normalsize}
{}% no number
{0pt}% no space
{}% the title
[\titlerule]
\titlespacing*{\subsection}{0pt}{*1}{*0.5}
% main macros
\newlength{\firstcol}
\newlength{\thirdcol}
% helper column types
\newcolumntype{L}[2]{%
>{\raggedright\arraybackslash}p{\dimexpr\textwidth-(#1)-#2\tabcolsep\relax}%
}
\newcolumntype{J}[2]{%
p{\dimexpr\textwidth-(#1)-#2\tabcolsep\relax}%
}
\ExplSyntaxOn
\NewDocumentCommand{\twocol}{ m O{L} m +m }
{
#1{#3}
\begin{tabular}[t]{
@{}
wl{\firstcol}
#2{\firstcol}{2}
@{}
}
\scw_cv_table:n { #4 }
\end{tabular}\par
}
\NewDocumentCommand{\threecol}{ m O{L} m +m }
{
#1{#3}
\begin{tabular}[t]{
@{}
wl{\firstcol}
#2{\firstcol+\thirdcol}{4}
wr{\thirdcol}
@{}
}
\scw_cv_table:n { #4 }
\end{tabular}\par
}
\seq_new:N \l__scw_cv_rows_seq
\tl_new:N \l__scw_cv_last_tl
\cs_new_protected:Nn \scw_cv_table:n
{
% get the rows
\seq_set_split:Nnn \l__scw_cv_rows_seq { \\ } { #1 }
% remove the last item if empty
\seq_pop_right:NN \l__scw_cv_rows_seq \l__scw_cv_last_tl
\tl_if_blank:VF \l__scw_cv_last_tl
{% not blank, reinsert it
\seq_put_right:NV \l__scw_cv_rows_seq \l__scw_cv_last_tl
}
% deliver the rows separated by \\ \addlinespace
\seq_use:Nn \l__scw_cv_rows_seq { \\ \addlinespace }
}
\ExplSyntaxOff
%%% final customization
\setlength{\firstcol}{1.25in}
\setlength{\thirdcol}{1in}
%\setlength{\defaultaddspace}{0.5em} % this is the default in booktabs
%%%
\begin{document}
\threecol\section{Education}{
2020 (expected) &Something, somewhere & Ph.D. \\ % or YYYY (expected)
}
\threecol\section{Grants and Scholarships}{
YYYY & test & bb \\
YYYY - YYYY & Fellowship & \$ AMOUNT \\ % if normal in your field
}
\twocol\subsection{Whatever}{
YYYY & something long to need being split across lines; let's just
write long enough nonsense and see
}
\twocol\subsection[J]{Whatever}{
YYYY & something long to need being split across lines; let's just
write long enough nonsense and see
}
\end{document}