早上好。在我的剧本中,我创建了一个\新命令对于每个字符。我想通过使用一个命令解决所有问题来简化\新文档命令,但是文档确实很难。这可能吗?非常感谢!
\documentclass[a4paper,12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{titlesec}
\usepackage{lipsum}
% Fonts
\usepackage{nimbusmononarrow}
\renewcommand*\familydefault{\ttdefault}
% def characters
\newcommand\JAMES{\par\vspace{5mm}\noindent\makebox[35mm][l]{JAMES}\hangindent=35mm}
\newcommand\CLARE{\par\vspace{5mm}\noindent\makebox[35mm][l]{CLARE}\hangindent=35mm}
\newcommand\BILL{\par\vspace{5mm}\noindent\makebox[35mm][l]{BILL}\hangindent=35mm}
\newcommand\ESTER{\par\vspace{5mm}\noindent\makebox[35mm][l]{ESTER}\hangindent=35mm}
\begin{document}
\JAMES
\lipsum*[1][1-3]
\CLARE
\lipsum*[1][1-4]
\BILL
\lipsum*[1][1-5]
\ESTER
\lipsum*[1][1-2]
\end{document}
答案1
如果你愿意简化它,你可以为每四个人定义一个通用的宏,因为每个人都有相同格式的命令。
% def characters
\def\declname#1#2{%
\def#1{\vskip5mm \noindent\hbox to35mm{#2\hss}\hangindent=35mm \ignorespaces}}
\declname \JAMES {JAMES}
\declname \CLARE {CLARE}
\declname \BILL {BILL}
\declname \ESTER {ESTER}
答案2
建议:为了节省两次输入名称的时间,您可以执行以下操作:
% def characters
\newcommand\declname[1]{%
\expandafter\newcommand\csname #1\endcsname{\par\vspace{5mm}\noindent\makebox[35mm][l]{#1}\hangindent=35mm}}
\declname {JAMES}
\declname {CLARE}
\declname {BILL}
\declname {ESTER}
平均能量损失
\documentclass[a4paper,12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{titlesec}
\usepackage{lipsum}
% Fonts
\usepackage{nimbusmononarrow}
\renewcommand*\familydefault{\ttdefault}
% def characters
\newcommand\declname[1]{%
\expandafter\newcommand\csname #1\endcsname{\par\vspace{5mm}\noindent\makebox[35mm][l]{#1}\hangindent=35mm}}
\declname {JAMES}
\declname {CLARE}
\declname {BILL}
\declname {ESTER}
\begin{document}
\JAMES
\lipsum*[1][1-3]
\CLARE
\lipsum*[1][1-4]
\BILL
\lipsum*[1][1-5]
\ESTER
\lipsum*[1][1-2]
\end{document}