I'm submitting a paper and am required to use a provided document class which defines its own theorem environments, so I can't use packages like amsthm
or ntheorem
. The class doesn't define a 'Definition' theorem environment, so I defined my own. I'm trying to get the body text not to be in italic, just like \theoremstyle{definition}
does. Is there a way to do it?
[Tex/LaTex] disable italics in the body text of a theorem without amsthm/ntheorem
document-classesenvironmentsfontstheorems
Best Answer
Ad-hoc restyling can be done using
\normalfont
at the start of thedefinition
:The above solution would hold for journals where you're not allowed to include other packages. If they don't mind and your
definition
theorem environment is defined very simply, you could use something like:to modify the start of the environment to always use
\normalfont
. This would then be a global change to thedefinition
theorem environment. Of course, you need not use a theorem-style to create thedefinition
environment in the first place. However, without much knowledge over the context and use, it would be hard to speculate on how you want it to look.The above redefinition doesn't allow the use of an optional argument for the
definition
environment. If you want this, you can useinstead. The above uses
xparse
to capture and examine the possibility of an optional argument, and using it if it exists, before inserting the\normalfont
override.