编写 LaTeX 宏来区分文本

编写 LaTeX 宏来区分文本

我正在写一份报告,出于编辑目的,我想为报告的每个部分使用不同的字体。我想我需要为此编写一个宏,但我不知道如何实现这种效果:

\begin{editLater}
//Use times font for this

\end{editLater}

或者

\begin{finalVersion}
//Use new roman font for this

\end{finalVersion}

答案1

您可以使用字体切换宏\rmfamily\sffamily来切换当前组内的字体。您可以使用定义自己的环境\newenvironment

在本地更改为完全不同的字体更为复杂。您应该最后加载所有带有主字体的字体包,然后需要重命名某些字体宏,如下所示\rmdefault

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{mathptmx} % Times
\usepackage{lmodern}  % LaTeX modern

\usepackage{blindtext}% dummy text

\newenvironment{editLater}{%
    \def\rmdefault{ptm}\rmfamily
}{}
\newenvironment{finalVersion}{%
    \rmfamily
    %\sffamily
}{}

\begin{document}

\blindtext

\begin{editLater}
\blindtext
\end{editLater}

\begin{finalVersion}
\blindtext
\end{finalVersion}

\end{document}

答案2

与马丁的答案相同,但使用versions在编辑为最终版本后切换。我忍不住要发帖,所以请耐心等待。

\documentclass{article}
\usepackage{lipsum} %% Provides dummy text
\usepackage[T1]{fontenc}
%-------------------------------------------------------
\newenvironment{editLater}{\fontfamily{ptm}\selectfont}{\par}
\newenvironment{finalVersion}{\fontfamily{cmr}\selectfont}{\par}
%-------------------------------------------------------
\usepackage{versions}
% \excludeversion{editLater} %% uncomment this line if you want final  version alone
%-------------------------------------------------------

\begin{document}
%% once you edit completely, change editLater to finalVersion inside braces.
\begin{editLater}
\lipsum[1-2]
\end{editLater}
\begin{finalVersion}
\lipsum[3-4]
\end{finalVersion}
\end{document} 

编辑

这使用comment包。

\documentclass{article}
\usepackage{lipsum} %% Provides dummy text
\usepackage[T1]{fontenc}
%-------------------------------------------------------
% \newcommand{\editLater}[2]{{\fontfamily{ptm}\selectfont #2}}
% \newcommand{\finalVersion}[2]{{\fontfamily{cmr}\selectfont #2}}
%-------------------------------------------------------
\newenvironment{editLater}{\fontfamily{ptm}\selectfont}{\par}
\newenvironment{finalVersion}{\fontfamily{cmr}\selectfont}{\par}
%-------------------------------------------------------
\usepackage{comment}
%\excludecomment{editLater} %% uncomment this line if you want final  version alone
%-------------------------------------------------------

\begin{document}
%% once you edit completely, change editLater to finalVersion inside braces.
\begin{editLater}
\lipsum[1-2]
\end{editLater}
\begin{finalVersion}
\lipsum[3-4]
\end{finalVersion}
\end{document}

相关内容