我的風格.sty

我的風格.sty

我想製作一個包,其中包含我在所有問題集中定義的一堆命令。我遇到了一個問題,編譯器無法識別我定義的帶有參數的命令。這是一個無法編譯的簡單範例,我似乎無法找出原因。

這是我的樣式文件,恰當地命名為mystyle.sty

\ProvidesPackage{mystyle}

\newcommand{\test}{\Huge}
\newcommand{\hding}[1]{#1\newline\normaltext}

mystyle.sty裡面有兩個指令。 \test 只是使文字變大,並\hding附加換行符號並將字體更改回正常。我腦殘的簡單.tex文件如下:

\documentclass{paper}

\usepackage{mystyle}

\begin{document}
Hello World!
%\hding{Hello World!} Hello World!
\test Hello World!
\end{document}

僅通過測試功能,一切正常。但是,如果我嘗試使用\hding未註釋的函數進行編譯,編譯器會向我大喊以下錯誤:

! Undefined control sequence.
\hding #1->#1\newline \normaltext 

l.7 \hding{Hello World!}
                     Hello World!

到底是怎麼回事?我不明白什麼?

答案1

最有可能的是,該\normaltext命令應該讀取\normalsize,因為OP首先將字體大小更改為\Huge\hding應將其恢復為正常字體,這可以理解為恢復原始字體大小,這可以透過 來實現\normalsize

據我所知,沒有任何\normaltext命令。

\textnormal,正如 ChrisS 建議的那樣,更適合在數學模式中使用,以便獲得正常文本,而不是數學字體。

我的風格.sty

    \ProvidesPackage{mystyle}

    \newcommand{\test}{\Huge}
    \newcommand{\hding}[1]{#1\newline\normalsize}%

主文件

\documentclass{paper}

\usepackage{mystyle}


\begin{document}
\[\textnormal{Hello World!}\]
\[Hello World\]
Hello World!
\hding{Hello World!} Hello World!
Before \test Afterwards: Hello World!
\end{document}

在此輸入影像描述

筆記

原則上最好有一個環境能夠實現字體切換和事後恢復。

相關內容