我正在尝试创建一个具有个人环境(例如定义、定理……)的投影仪。
但是,当我编译时,不仅会显示我的个人定义,还会显示另一个定义,就好像我正在使用块(而我没有)。
这是我的代码:
% Inbuilt themes in beamer
\documentclass[notheorems]{beamer}
% Theme choice:
\usetheme{default}
\usecolortheme{rose}
\usefonttheme{professionalfonts}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsgen,amsmath,amstext,amsbsy,amsopn,amsthm,amsfonts,amssymb,makeidx}
\usepackage[inline]{enumitem}%{enumerate}
\usepackage{titlesec}
\usepackage{framed}
\usepackage{lmodern}
\usepackage{mathrsfs}
\usepackage{setspace}
\usepackage[off]{auto-pst-pdf}
\usepackage[french]{babel}
\usepackage{mathtools}
\usepackage{color, xcolor}
\usepackage[all]{xy}
\definecolor{def}{rgb}{0.604,0.196,0.804}
% Personal definition style
% **************
\renewenvironment{leftbar}[1][\hsize]
{%
\def\FrameCommand
{%
{\hspace{0pt}\color{darkgray}\vrule width 2pt}
\hspace{5pt}%must no space.
\fboxsep=\FrameSep\makebox%\colorbox{lightgray}
}
\MakeFramed{\hsize#1\advance\hsize-\width\FrameRestore}
}
{\endMakeFramed}
\newcounter{def}
\newtheoremstyle
{defi} %1 Nom
{0ex} %2 Espace avant
{0ex} %3 Espace après
{\sffamily} %4 forme des caractères
{0ex} %5 indentation
{\scshape} %6 Style de l'entête
{} %7
{ } %8 Retour à la ligne après le titre
{{}} %9 Comme dans plain ?
\theoremstyle{defi}
\newtheorem{dfplus}[def]{Définition}
\newenvironment{Def}[1][\null]{\begin{leftbar}\begin{dfplus}\textcolor{def}{\scshape{Définition \thedef#1 : }}\color{black}\normalfont\sffamily}{\end{dfplus}\end{leftbar} \vspace*{0.2cm}}
% **************
\begin{document}
\begin{frame}
\begin{Def}
here is my definition
\end{Def}
\end{frame}
\end{document}
感谢您的帮助 !
答案1
您可以使用
\setbeamertemplate{theorem begin}{}
\setbeamertemplate{theorem end}{}
禁用定理块。
% Inbuilt themes in beamer
\documentclass[notheorems]{beamer}
% Theme choice:
%\usetheme{default}
\usecolortheme{rose}
\usefonttheme{professionalfonts}
\setbeamertemplate{theorem begin}{}
\setbeamertemplate{theorem end}{}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
%\usepackage{amsgen,amsmath,amstext,amsbsy,amsopn,amsthm,amsfonts,amssymb,makeidx}
%\usepackage[inline]{enumitem}%{enumerate}
%\usepackage{titlesec}
\usepackage{framed}
\usepackage{lmodern}
\usepackage{mathrsfs}
\usepackage{setspace}
\usepackage[off]{auto-pst-pdf}
\usepackage[french]{babel}
\usepackage{mathtools}
%\usepackage{color, xcolor}
\usepackage[all]{xy}
\definecolor{def}{rgb}{0.604,0.196,0.804}
% Personal definition style
% **************
\renewenvironment{leftbar}[1][\hsize]
{%
\def\FrameCommand
{%
{\hspace{0pt}\color{darkgray}\vrule width 2pt}
\hspace{5pt}%must no space.
\fboxsep=\FrameSep\makebox%\colorbox{lightgray}
}
\MakeFramed{\hsize#1\advance\hsize-\width\FrameRestore}
}
{\endMakeFramed}
\newcounter{def}
\newtheoremstyle
{defi} %1 Nom
{0ex} %2 Espace avant
{0ex} %3 Espace après
{\sffamily} %4 forme des caractères
{0ex} %5 indentation
{\scshape} %6 Style de l'entête
{} %7
{ } %8 Retour à la ligne après le titre
{{}} %9 Comme dans plain ?
\theoremstyle{defi}
\newtheorem{dfplus}[def]{Définition}
\newenvironment{Def}[1][\null]{\begin{leftbar}\begin{dfplus}\textcolor{def}{\scshape{Définition \thedef#1 : }}\color{black}\normalfont\sffamily}{\end{dfplus}\end{leftbar} \vspace*{0.2cm}}
% **************
\begin{document}
\begin{frame}
\begin{Def}
here is my definition
\end{Def}
\end{frame}
\end{document}
或者你可以使用noamsthm
类选项(但是这样你将失去对定理的覆盖意识)
% Inbuilt themes in beamer
\documentclass[noamsthm]{beamer}
% Theme choice:
%\usetheme{default}
\usecolortheme{rose}
\usefonttheme{professionalfonts}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsthm}
%\usepackage{amsgen,amsmath,amstext,amsbsy,amsopn,amsthm,amsfonts,amssymb,makeidx}
%\usepackage[inline]{enumitem}%{enumerate}
%\usepackage{titlesec}
\usepackage{framed}
\usepackage{lmodern}
\usepackage{mathrsfs}
\usepackage{setspace}
\usepackage[off]{auto-pst-pdf}
\usepackage[french]{babel}
\usepackage{mathtools}
%\usepackage{color, xcolor}
\usepackage[all]{xy}
\definecolor{def}{rgb}{0.604,0.196,0.804}
% Personal definition style
% **************
\renewenvironment{leftbar}[1][\hsize]
{%
\def\FrameCommand
{%
{\hspace{0pt}\color{darkgray}\vrule width 2pt}
\hspace{5pt}%must no space.
\fboxsep=\FrameSep\makebox%\colorbox{lightgray}
}
\MakeFramed{\hsize#1\advance\hsize-\width\FrameRestore}
}
{\endMakeFramed}
\newcounter{def}
\newtheoremstyle
{defi} %1 Nom
{0ex} %2 Espace avant
{0ex} %3 Espace après
{\sffamily} %4 forme des caractères
{0ex} %5 indentation
{\scshape} %6 Style de l'entête
{} %7
{ } %8 Retour à la ligne après le titre
{{}} %9 Comme dans plain ?
\theoremstyle{defi}
\newtheorem{dfplus}[def]{Définition}
\newenvironment{Def}[1][\null]{\begin{leftbar}\begin{dfplus}\textcolor{def}{\scshape{Définition \thedef#1 : }}\color{black}\normalfont\sffamily}{\end{dfplus}\end{leftbar} \vspace*{0.2cm}}
% **************
\begin{document}
\begin{frame}
\begin{Def}
here is my definition
\end{Def}
\end{frame}
\end{document}