3

I am using the mathptmx package because I prefer my text to be in Times New Roman. However, \mathcal provides in this package "super calligraphic" symbols looking like the ones obtained by using \mathscr from the mathrsfs package.

My question is therefore: How can I get the F for, e.g., the Fourier transform to look like \mathcal F in default mode (see for an example https://proofwiki.org/wiki/Symbols:%5Cmathcal). Similarly, for the Schwarz space I want the S to look like \mathcal S in default mode.

If I may add a second question: what exactly is the purpose the mathptmx package, apart from changing the font style to Times New Roman?

Many thanks in advance!

  • Possible duplicate : Resetting mathcal font to default – marsupilam Sep 14 '17 at 18:33
  • If you really love Times (de gustibus non est disputandum…), you should give a try at the newtxtext, newtxmath packages, based on TeX Gyre Termes, a Times clone, which has more possibilities. – Bernard Sep 14 '17 at 18:58
3

To grab the whole alphabet

\documentclass{article}
\DeclareMathAlphabet{\altmathcal}{OMS}{cmsy}{m}{n}
\usepackage{mathptmx}
\begin{document}
$\altmathcal{F}\mathcal{F}$

$\altmathcal{S}\mathcal{S}$

abc\fontfamily{cmr}\selectfont abc
\end{document}

enter image description here

To grab just one or two characters

You could save them each in a box before loading mathptmx. No need to worry about smaller mathstyles, as \mathcal does not seem to support them anyhow.

\documentclass{article}
\newsavebox\mcFcontent
\savebox\mcFcontent{$\mathcal{F}$}
\newcommand\mcF{\usebox{\mcFcontent}}
\newsavebox\mcScontent
\savebox\mcScontent{$\mathcal{S}$}
\newcommand\mcS{\usebox{\mcScontent}}
\usepackage{mathptmx}
\begin{document}
$\mcF\mathcal{F}$

$\mcS\mathcal{S}$
\end{document}

enter image description here

One can make it a macro \savemathcal{} and use them with \altmathcal{}:

\documentclass{article}
\newcommand\savemathcal[1]{%
  \expandafter\newsavebox\csname mc#1content\endcsname%
  \expandafter\savebox\csname mc#1content\endcsname{$\mathcal{#1}$}%
  \expandafter\newcommand\csname mc#1\endcsname{%
    \expandafter\usebox\expandafter{\csname mc#1content\endcsname}}%
}
\newcommand\altmathcal[1]{\csname mc#1\endcsname}
\savemathcal{F}
\savemathcal{S}
\usepackage{mathptmx}
\begin{document}
$\altmathcal{F}\mathcal{F}$

$\altmathcal{S}\mathcal{S}$
\end{document}

As to your second question, https://ctan.org/search/?phrase=mathptmx says

Pack­age math­ptmx
Use Times as de­fault text font, and pro­vide maths sup­port
  • Is there short way to do this for every letter in the alphabet? This way I'd have the calligraphic versions of both font styles (Times and default font) available. Many thanks! – Apollo13 Sep 14 '17 at 18:12
  • @Apollo13 For text fonts, the way to do it is just select the appropriate font family. In your document, for example, try abc\fontfamily{cmr}\selectfont abc. You will see the times abc, followed by the computer modern abc. – Steven B. Segletes Sep 14 '17 at 18:12
  • With math alphabets, there is a more complicated \DeclareMathAlphabet command, except that I did not know the name of the original \mathcal font to do so, so I used boxes instead. – Steven B. Segletes Sep 14 '17 at 18:15
  • @Apollo13 See my revision – Steven B. Segletes Sep 14 '17 at 18:20
  • With my new revision, you need do none of the above. The one line \DeclareMathAlphabet{\altmathcal}{OMS}{cmsy}{m}{n} makes all the original \mathcal letters available as \altmathcal. The line \fontfamily{cmr}\selectfont changes all the letters back to computer modern font, the default LaTeX font. – Steven B. Segletes Sep 14 '17 at 18:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.