我一直在努力理解我的 latex 序言。我已将我的序言列在下面,供其他人查看。
平均能量损失
\documentclass[12pt, titlepage, oneside, a4paper]{report}
\usepackage[T1]{fontenc}
\usepackage[bitstream-charter]{mathdesign}
\usepackage[titletoc]{appendix}
\usepackage[utf8]{inputenc}
\usepackage{amssymb, graphicx, fancyhdr}
\usepackage{amsmath}
\usepackage{amsthm,algorithm,algorithmic,yhmath,enumitem,lscape}
\usepackage{subcaption}
\usepackage[mathscr]{euscript}
\DeclareMathAlphabet{\mathcal}{OMS}{cmsy}{m}{n}
\usepackage{float}
\usepackage{chngcntr}
\begin{document}
$\mathcal{L}$
\end{document}
我的问题是:
问题 1:使用包更改中心应该允许我使用命令重置计数器
\counterwithin*{equation}{chapter}
但是,它什么也没做。我必须在每一章结束后手动将计数器设置为零。
问题2:我想要mathcal{}
某种格式。类似于您在\usepackage[mathscr]{euscript}
或类似的格式,但即使我将其放在序言中,它也不会执行任何操作,而且我得到的是那种看起来很糟糕的\mathrsfs
东西。此外,我尝试使用中给出的命令手动设置它此链接但我收到冲突语句,指出\mathcal
已定义**。我该如何让它工作?
添加信息:至于chngcntr
软件包,我发现添加到序言中的新命令导致了问题。删除它并使用常规\chapter{}
命令确实可以根据章节进行设置。但我需要它,因为我不想看到章节 #一直写在上面。我也想了解问题背后的原因。
\newcommand{\mychapter}[2]{
\setcounter{chapter}{#1}
\setcounter{section}{0}
\chapter*{#2}
\addcontentsline{toc}{chapter}{#2}}
答案1
\setcounter{foo}{...}
永远不会重置计数器重置列表上的计数器,即\setcounter{chapter}{...}
不会重置section
。equation
显然,这里手动给出了章节编号,因此\setcounter{chapter}{\numexpr#1-1}
应用了它,即1
从所需值中减去。然后使用\refstepcounter
它做两件事:
- 提供正确的标签信息(如果需要)
- 调用
\stepcounter
该函数反过来保证使用 - 机制重置计数器\@elt
并再次增加章节计数器,然后获得请求的值。
\documentclass[12pt, titlepage, oneside, a4paper]{report}
\usepackage[T1]{fontenc}
%\usepackage[bitstream-charter]{mathdesign}
\usepackage[titletoc]{appendix}
\usepackage[utf8]{inputenc}
\usepackage{amssymb, graphicx, fancyhdr}
\usepackage{amsmath}
\usepackage{amsthm,algorithm,algorithmic,yhmath,enumitem,lscape}
\usepackage{subcaption}
%\usepackage[mathscr]{euscript}
\DeclareMathAlphabet{\mathcal}{OMS}{cmsy}{m}{n}
\usepackage{float}
\usepackage{chngcntr}
\newcommand{\mychapter}[2]{%
\setcounter{chapter}{\numexpr#1-1}%
\refstepcounter{chapter}%
\chapter*{#2}
\addcontentsline{toc}{chapter}{#2}}
\begin{document}
\tableofcontents
\mychapter{4}{Foo}
\begin{equation}
E=mc^2
\end{equation}
\begin{equation}
E=mc^2
\end{equation}
\mychapter{17}{Foobar}
\begin{equation}
E=mc^2
\end{equation}
\begin{equation}
E=mc^2
\end{equation}
\end{document}
这个答案没有解决不相关的mathcal
问题!
答案2
关于问题 2,我花了一天时间试图弄清楚如何使用带有选项\mathcal{}
的旧字母\usepackage[bitstream-charter]{mathdesign}
,以及您通过你知道的人链接的答案(数学模式下两种不同的书法字体样式)帮助我摆脱了已经定义错误!
总而言之,第二个问题的解决方案如下(在序言中):
\usepackage{calrsfs}
\DeclareMathAlphabet{\pazocal}{OMS}{zplm}{m}{n}
\let\mathcal\undefined
\newcommand{\mathcal}[1]{\pazocal{#1}}