有此代码可生成一个除外部分:
\RequirePackage[absolute,overlay]{textpos}
\setlength{\TPHorizModule}{1cm}
\setlength{\TPVertModule}{1cm}
\newenvironment{aside}{%
\let\oldsection\section
\renewcommand{\section}[1]{
\par\vspace{\baselineskip}{\Large\headingfont\color{headercolor} ##1}
}
\begin{textblock}{3.6}(1.5, 4.33)
\begin{flushright}
\obeycr
}{%
\restorecr
\end{flushright}
\end{textblock}
\let\section\oldsection
}
效果很好,但我想增加aside
部分内文本的行距......
尝试在\obeycr
命令后插入此行:
\par\vspace{.25\parskip}%
但要更改部分之间的行间aside
,而不是部分内的文本行。
这是 .tex 源代码
\begin{aside}
\section{info}
Homer J. Simpson
123 Fake Street
Springfield, NJ 08105-442
555-966-5786
\href{mailto:[email protected]}{[email protected]}
\end{aside}
我需要增加地址和电话号码之间以及电话号码和电子邮件链接之间的内联。
答案1
TeX 无法知道您想要在电话号码或电子邮件地址前添加空格,也无法知道某些字符构成电话号码或电子邮件地址。因此,您要么使用明确的空格命令,要么以某种方式标记输入:
\documentclass[a4paper]{article}
\usepackage{color}
\usepackage[absolute,overlay]{textpos}
\usepackage{hyperref}
\setlength{\TPHorizModule}{1cm}
\setlength{\TPVertModule}{1cm}
\newenvironment{aside}{%
\begin{textblock}{3.6}(1.5, 4.33)
\begin{flushright}
\obeycr
}{%
\restorecr
\end{flushright}%
\end{textblock}%
}
\providecommand\headingfont{} % I don't know what you want to define it
\definecolor{headercolor}{rgb}{0,0,1} % I don't know what's your favorite color
\newcommand{\tel}[1]{\addvspace{1ex}#1}
\newcommand{\email}[1]{\addvspace{1ex}\href{mailto:#1}{#1}}
\newcommand{\asidesection}[1]{%
\par\vspace{\baselineskip}{\Large\headingfont\color{headercolor} #1}%
}
\begin{document}
\begin{aside}
\asidesection{info}
Homer J. Simpson
123 Fake Street
Springfield, NJ 08105-442
\tel{555-966-5786}
\email{[email protected]}
\end{aside}
\end{document}
请注意,我使用了不同的命令来表示标题,因为我绝不会\section
为此目的重新定义。不过,这只是个人喜好问题。请注意\let\oldsection\section
和\let\section\oldsection
是多余的,因为您的重新定义发生在形成组的环境中。
如果您的aside
环境都有标题,则可以使用不同的策略:
\newenvironment{aside}[1]{%
\begin{textblock}{3.6}(1.5, 4.33)
\begin{flushright}
\obeycr
\par\vspace{\baselineskip}{\Large\headingfont\color{headercolor}#1}%
}{%
\restorecr
\end{flushright}%
\end{textblock}%
}
你的环境将是
\begin{aside}{info}
Homer J. Simpson
123 Fake Street
Springfield, NJ 08105-442
\tel{555-966-5786}
\email{[email protected]}
\end{aside}
答案2
如果这是一个可以接受的选择,我相信你可以手动完成:
其中可以用或等\par\medskip
代替。\par\smallskip
\\[3pt]
\documentclass{article}
\usepackage[absolute,overlay]{textpos}
\usepackage{hyperref}
\usepackage{xcolor}
\setlength{\TPHorizModule}{1cm}
\setlength{\TPVertModule}{1cm}
\newenvironment{aside}{%
\let\oldsection\section
\renewcommand{\section}[1]{
\par\vspace{\baselineskip}{\Large\color{blue} ##1}
}
\begin{textblock}{3.6}(1.5, 4.33)
\begin{flushright}
}{%
\end{flushright}
\end{textblock}
\let\section\oldsection
}
\begin{document}
\begin{aside}
\section{info}\par
Homer J. Simpson\par
123 Fake Street\par
Springfield, NJ 08105-442\par\medskip
555-966-5786\par\medskip
\href{mailto:[email protected]}{[email protected]}
\end{aside}
\end{document}