我想在 Latex 中创建徽章。我想将徽章并排放在纸上,因此我只需剪一次纸!我有以下代码:
\documentclass[a4paper,12pt]{article}
\usepackage{fullpage}
\usepackage{filecontents}
\usepackage{csvtools}
\usepackage{graphicx}
\usepackage{fix-cm}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\pagestyle{empty}
\begin{document}
\setcsvseparator{;}
\applyCSVfile{kimaradt.csv}{%
\noindent
\hspace{-2mm}
\vspace{-0.2mm}
\fbox{\begin{minipage}[t][52mm]{87mm}
\vspace{10mm}
\sffamily \centering
\fontsize{22}{26}\selectfont\textbf\insertName
\LARGE \vspace{5mm}
\itshape\insertAffiliation
\vspace{1mm}
\begin{minipage}[b]{4.8cm}
\begin{center}
\footnotesize
International Conference\\
2019
\end{center}
\end{minipage}
\end{minipage}}
}
\end{document}
对应的 CSV 文件如下:
Name;Affiliation
John Smith; UK
Jack Black; UK
John Smith; UK
Jack Black; UK
John Smith; UK
Jack Black; UK
John Smith; UK
Jack Black; UK
John Smith; UK
Jack Black; UK
John Smith; UK
Jack Black; UK
John Smith; UK
Jack Black; UK
John Smith; UK
Jack Black; UK
我的问题是,第一行徽章在第一页上的位置与所有其他页面上的徽章的位置不同。所以我的问题是:
- 我该如何解决这个问题?那个空格(负缩进)来自哪里?
我的问题是:
- 我该如何调试并发现此类问题?有没有什么方法、技术或软件包可以解决此问题?
答案1
\mbox{}%
第一个之前的\hspace{..}
行距将使水平间距生效。否则,它将被吸收到段落的开头。
\documentclass[a4paper,12pt]{article}
\usepackage{fullpage}
\usepackage{filecontents}
\usepackage{csvtools}
\usepackage{graphicx}
\usepackage{fix-cm}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\pagestyle{empty}
\begin{document}
\setcsvseparator{;}
\applyCSVfile{kimaradt.csv}{%
\noindent
\mbox{}% add this to let the first \hspace take effect
\hspace{-2mm}
\vspace{-0.2mm}
\fbox{\begin{minipage}[t][52mm]{87mm}
\vspace{10mm}
\sffamily \centering
\fontsize{22}{26}\selectfont\textbf\insertName
\LARGE \vspace{5mm}
\itshape\insertAffiliation
\vspace{1mm}
\begin{minipage}[b]{4.8cm}
\begin{center}
\footnotesize
International Conference\\
2019
\end{center}
\end{minipage}
\end{minipage}}
}
\end{document}
由此得到以下变换:
- 对于你的第二个问题,一般的答案是:你需要更深入地了解每个命令生效的逻辑。但是,我猜,这样做所需的时间是无限的(或者,更确切地说,一个人的生命可能不足以掌握所有这些)。一个具体的答案可能是:阅读一些中级到高级的 LaTeX 文档,其中之一就是LaTeX 伴侣。