Latex 序言 - 冲突和不良软件包

Latex 序言 - 冲突和不良软件包

我一直在努力理解我的 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}{...}不会重置sectionequation

显然,这里手动给出了章节编号,因此\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}}

相关内容