使用新定理的問題

使用新定理的問題

我正在嘗試使用\newtheorem.

這是我的小麥粒腫文件 mystyle.sty

\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
\newtheorem{action}{$\checkmark$ Action}
\newtheorem{law}{$\bigodot$ Law}
\newtheorem{fact}{$\boxdot$ Fact}
\newtheorem{warn}{$\warning$ Caveat}

這是 tex 檔:

\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amssymb}
%\usepackage{arevmath}
\usepackage{mystyle}
\begin{document}
\section{Head}
\begin{law}
The world is round
\end{law}
\begin{fact}
\(g =99.8 m/s^2\)
\end{fact}
\begin{action}
Teach co-recursion before recursion
\end{action}
\begin{warn}
 Beware
\end{warn}
\end{document}

這是帶包包的arevmath 與阿維數學

這是沒有 arevmath 的 沒有阿維數學

現在的問題是:

  1. 我想要有警告符號,arevmath但沒有的整體外觀arevmath更好。兩者如何管理?
  2. 內容以斜體顯示。但我找到的使用它的例子newtheorem 都是普通的羅馬字體。還有什麼不對嗎?例如...
  3. 我從使用 的內聯源中獲取了例如\makeatletter。我完全不確定如何使用它,除了一些模糊的指令: use in .texnot in .sty

答案1

您只想使用 提供的符號arevmath,而不是更改所有數學符號來使用它。

實際上,arevmath使用ams-mdbch並且我們看到,在ams-mdbch.sty

\xdef\checkmark{\noexpand\mathhexbox{\hexnumber@\symmathdesignA}D8}
\DeclareMathSymbol{\boxdot}{\mathbin}{mathdesignA}{"80}

\bigodot儘管使用不同的字體,但的定義是標準定義。該命令\warning位於arevsymbols.tex我們看到的

\DeclareMathSymbol{\warning}{\mathalpha}{extraup}{125} % uni26A0

好的,文件ams-mdbch.sty

\DeclareSymbolFont{mathdesignA}{MDA}{mdbch}{b}{n}
\SetSymbolFont{largesymbols} {normal}{OMX}{mdbch}{m}{n}

我們arevmath.sty看到

\DeclareSymbolFont{extraup}{U}{zavm}{m}{n}

真是一場追逐啊!但我們擁有所有的成分。唯一的問題是\bigodot,但可以解決。

\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amssymb}
%\usepackage{arevmath}

\DeclareFontEncoding{MDA}{}{}
\DeclareFontSubstitution{MDA}{cmr}{m}{n}

\newcommand{\arevcheckmark}{{\usefont{MDA}{mdbch}{b}{n}\symbol{"D8}}}
\newcommand{\arevbigodot}{%
  $\vcenter{\hbox{\usefont{OMX}{mdbch}{m}{n}\symbol{"4A}}}$%
}
\newcommand{\arevboxdot}{{\usefont{MDA}{mdbch}{b}{n}\symbol{"80}}}
\newcommand{\arevwarning}{{\usefont{U}{zavm}{m}{n}\symbol{125}}}

\newtheorem{action}{\arevcheckmark\ Action}
\newtheorem{law}{\arevbigodot\ Law}
\newtheorem{fact}{\arevboxdot\ Fact}
\newtheorem{warn}{\arevwarning\ Caveat}

\begin{document}

\section{Head}

\begin{law}
The world is round
\end{law}

\begin{fact}
\(g =99.8 m/s^2\)
\end{fact}

\begin{action}
Teach co-recursion before recursion
\end{action}

\begin{warn}
Beware
\end{warn}

\end{document}

在此輸入影像描述

我在 9.8 m/s 2中留下了錯誤的單位排版,請修復它。

答案2

我目前的版本感謝egreg的幫助。
[是的,單位不正確。但無論如何,這對我來說是一個轉移注意力的事情,因為我想產生一些mwe;在我的實際例子中不是我目前需要的東西]

\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
%\usepackage{arevmath}

\DeclareFontEncoding{MDA}{}{}
\DeclareFontSubstitution{MDA}{cmr}{m}{n}

\newcommand{\arevcheckmark}{{\usefont{MDA}{mdbch}{b}{n}\symbol{"D8}}}
%% \newcommand{\arevbigodot}{%
%%   $\vcenter{\hbox{\usefont{OMX}{mdbch}{m}{n}\symbol{"4A}}}$%
%% }

\newcommand{\arevboxdot}{{\usefont{MDA}{mdbch}{b}{n}\symbol{"80}}}
\newcommand{\arevwarning}{{\usefont{U}{zavm}{m}{n}\symbol{125}}}

\theoremstyle{definition}
\newtheorem{action}{\arevcheckmark\ Action}
\newtheorem{law}{\(\odot\)\ Law}
\newtheorem{fact}{\(\boxdot\)\ Fact}
\newtheorem{warn}{\arevwarning\ Caveat}

\begin{document}

\section{Head}

\begin{law}
The world is round
\end{law}

\begin{fact}
\(g =99.8 m/s^2\)
\end{fact}

\begin{action}
Teach co-recursion before recursion
\end{action}

\begin{warn}
Beware
\end{warn}
\end{document}

相關內容