![如何更改“ \declaretheorem ”中所有文本的字体颜色](https://linux22.com/image/402234/%E5%A6%82%E4%BD%95%E6%9B%B4%E6%94%B9%E2%80%9C%20%5Cdeclaretheorem%20%E2%80%9D%E4%B8%AD%E6%89%80%E6%9C%89%E6%96%87%E6%9C%AC%E7%9A%84%E5%AD%97%E4%BD%93%E9%A2%9C%E8%89%B2.png)
\documentclass[12pt]{article}
\usepackage{lmodern}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{mathrsfs}
\usepackage{amsthm}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage[utf8]{inputenc}
\usepackage[top=3cm, bottom=3cm, left=3cm, right=3cm]{geometry}
\usepackage[x11names]{xcolor}
\usepackage{framed, etoolbox}
\colorlet{framecolor}{VioletRed4}
\colorlet{shadecolor}{LavenderBlush2!60}
\usepackage{thmtools} %
\usepackage{titlesec}%%%%%% <---------addendum
\titleformat{\section}%%%%%% <---------addendum
{\color{magenta}\normalfont\Large\bfseries}%%%%%% <---------addendum
{\color{magenta}\thesection}{1.5em}{}%%%%%% <---------addendum
\makeatletter
\define@key{thmdef}{frame}[{}]{%
\thmt@trytwice{}{%
\RequirePackage{framed}%
\RequirePackage{thm-patch}%
\def\FrameCommand{\fcolorbox{framecolor}{shadecolor}}
\addtotheorempreheadhook[\thmt@envname]{%
\begin{framed}}%
\addtotheorempostfoothook[\thmt@envname]{\end{framed}}%
}%
}
\makeatother
\declaretheorem[numberwithin=section, frame]{definition}
\declaretheorem[frame, sharenumber=definition]{proposition}
\AtBeginEnvironment{proposition}{\colorlet{framecolor}{DarkSeaGreen4}
\colorlet{shadecolor}{Yellow1!15}}
\newcommand{\myarrow}[1][1cm]{\mathrel{%
\hbox{\rule[\dimexpr\fontdimen22\textfont2-.2pt\relax]{#1}{.4pt}}%
\mkern-4mu\hbox{\usefont{U}{lasy}{m}{n}\symbol{41}}}}
\makeatletter
\setbox0\hbox{$\xdef\scriptratio{\strip@pt\dimexpr
\numexpr(\sf@size*65536)/\f@size sp}$}
\newcommand{\myscriptarrow}[1][1cm]{{%
\hbox{\rule[\scriptratio\dimexpr\fontdimen22\textfont2-.2pt\relax]
{\scriptratio\dimexpr#1\relax}{\scriptratio\dimexpr.4pt\relax}}%
\mkern-4mu\hbox{\let\f@size\sf@size\usefont{U}{lasy}{m}{n}\symbol{41}}}}
\makeatother
\begin{document}
\section{Arithmérique}
\subsection{12}
le but de ce chapitre
\begin{definition}
Soit $f\colon G \rightarrow G$ une application linéaire alors:\\%%%%%% <---------edit
\[\forall x,y\in G,\ f(x)=f(y)\implies x=y\]
\end{definition}
\begin{proposition}
Soit $f\colon G \myarrow[.7cm]G$ une application linéaire alors:\\%%%%%% <---------edit
\[\forall x,y\in G,\ f(x)=f(y)\iff x=y\]
\end{proposition}
\end{document}
答案1
您可以使用 来做到这一点\theorempreheadhook=...
。无关:最好将语言选项与文档类一起加载,以确保所有与语言相关的包都得到通知。另一点说明:不要\\
在显示的等式前添加 - 垂直间距会太大。
\documentclass[12pt, french]{article}
\usepackage{lmodern}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{mathrsfs}
\usepackage{amsthm}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage[utf8]{inputenc}
\usepackage[margin=3cm]{geometry}
\usepackage[x11names]{xcolor}
\usepackage{framed, etoolbox}
\colorlet{framecolor}{VioletRed4}
\colorlet{shadecolor}{LavenderBlush2!60}
\usepackage{thmtools} %
\usepackage{titlesec}%%%%%% <---------addendum
\titleformat{\section}%%%%%% <---------addendum
{\color{magenta}\normalfont\Large\bfseries}%%%%%% <---------addendum
{\color{magenta}\thesection}{1.5em}{}%%%%%% <---------addendum
\makeatletter
\define@key{thmdef}{frame}[{}]{%
\thmt@trytwice{}{%
\RequirePackage{framed}%
\RequirePackage{thm-patch}%
\def\FrameCommand{\fcolorbox{framecolor}{shadecolor}}
\addtotheorempreheadhook[\thmt@envname]{%
\begin{framed}}%
\addtotheorempostfoothook[\thmt@envname]{\end{framed}}%
}%
}
\makeatother
\declaretheorem[numberwithin=section, preheadhook = \color{HotPink4}]{definition}
\declaretheorem[frame, sharenumber=definition, preheadhook = \color{DodgerBlue3}]{proposition}
\AtBeginEnvironment{proposition}{\colorlet{framecolor}{DarkSeaGreen4}
\colorlet{shadecolor}{Yellow1!15}}
\newcommand{\myarrow}[1][1cm]{\mathrel{%
\hbox{\rule[\dimexpr\fontdimen22\textfont2-.2pt\relax]{#1}{.4pt}}%
\mkern-4mu\hbox{\usefont{U}{lasy}{m}{n}\symbol{41}}}}
\makeatletter
\setbox0\hbox{$\xdef\scriptratio{\strip@pt\dimexpr
\numexpr(\sf@size*65536)/\f@size sp}$}
\newcommand{\myscriptarrow}[1][1cm]{{%
\hbox{\rule[\scriptratio\dimexpr\fontdimen22\textfont2-.2pt\relax]
{\scriptratio\dimexpr#1\relax}{\scriptratio\dimexpr.4pt\relax}}%
\mkern-4mu\hbox{\let\f@size\sf@size\usefont{U}{lasy}{m}{n}\symbol{41}}}}
\makeatother
\begin{document}
\section{Arithmérique}
\subsection{12}
le but de ce chapitre
\begin{definition}
Soit $f\colon G \rightarrow G$ une application linéaire alors:%%%%%% <---------edit
\[\forall x,y\in G,\ f(x)=f(y)\implies x=y\]
\end{definition}
\begin{proposition}
Soit $f\colon G \myarrow[.7cm]G$ une application linéaire alors:%%%%%% <---------edit
\[\forall x,y\in G,\ f(x)=f(y)\iff x=y\]
\end{proposition}
\end{document}