是否可以创建形式为 ----------{TEX}---------- 的新命令?
例如,我想要类似的内容\nc{TEX}
,在行中间产生“TEX”,其余部分用“-”填充。
\nc{TEX}
-> ----TEX----
答案1
如果您想要更多的灵活性,您可以使用tikz
:
代码:
\documentclass{article}
\usepackage{xcolor}
\usepackage{tikz}
\usetikzlibrary{calc}
\newcommand{\nc}[2][]{%
\tikz \draw [draw=black, ultra thick, #1]
($(current page.center)-(0.5\linewidth,0)$) --
($(current page.center)+(0.5\linewidth,0)$)
node [midway, fill=white] {#2};
}
\begin{document}
\nc{\TeX}
\nc[dashed]{\TeX}
\bigskip
\nc[draw=red]{$\displaystyle\sum_{i=0}^n i^2=\frac{1}{3}n\left(n+\frac{1}{2}\right)(n+1)$}
\nc[draw=blue, dotted]{$\displaystyle\sum_{i=0}^n i^2=\frac{1}{3}n\left(n+\frac{1}{2}\right)(n+1)$}
\end{document}
答案2
使用此宏,规则会根据材料的大小自动垂直居中。可选参数用于规则厚度(默认为 0.4pt,规则的标准大小)。
\documentclass{article}
\newcommand{\nc}[2][0.4pt]{%
\sbox0{#1}%
\par\noindent
\makebox[\textwidth]{%
\leaders\hrule height\dimexpr(\ht0-\dp0)/2+(#1)/2\relax
depth-\dimexpr(\ht0-\dp0)/2-(#1)/2\relax
\hfill
\ #2\ %
\leaders\hrule height\dimexpr(\ht0-\dp0)/2+(#1)/2\relax
depth-\dimexpr(\ht0-\dp0)/2-(#1)/2\relax
\hfill
}%
\par
}
\begin{document}
\nc{\TeX}
\bigskip
\nc[1pt]{$\displaystyle\sum_{i=0}^n i^2=\frac{1}{3}n\left(n+\frac{1}{2}\right)(n+1)$}
\end{document}
答案3
可选参数允许\NC
您控制规则的粗细:
\documentclass{article}%
\usepackage{xhfill}
\newcommand\NC[2][0.4pt]{%
\noindent\xrfill[0.65ex]{#1}~{#2}~\xrfill[0.65ex]{#1}}
\begin{document}
\NC{\TeX}
\NC[1pt]{\TeX}
\NC{Some other text}
\NC[1pt]{Some other text}
\end{document}
答案4
以免您想要破折号(或不想要):
\documentclass{article}
\usepackage{calc, dashrule}
\newcommand*{\nc}[1]{%
\par\noindent\hrulefill#1\hrulefill\par}
\newlength{\mcw}
\newlength{\mcwidth}
\newcommand*{\mc}[1]{%
\settowidth{\mcw}{#1}%
\setlength{\mcwidth}{.5\textwidth-.5\mcw}%
\par\noindent\rule[.5ex]{\mcwidth}{.4pt}#1\rule[.5ex]{\mcwidth}{.4pt}\par}
\newcommand*{\qc}[1]{%
\settowidth{\mcw}{#1}%
\setlength{\mcwidth}{.5\textwidth-.5\mcw}%
\par\noindent\hdashrule[.5ex][x]{\mcwidth}{.4pt}{2mm 1pt}#1\hdashrule[.5ex][x]{\mcwidth}{.4pt}{2mm 1pt}\par}
\begin{document}
\nc{TEX}
\mc{TEX}
\qc{TEX}
\end{document}
对于基线、中线和虚线规则: