異なる定義済みセットの小文字と大文字を使用して数学アルファベットを作成するにはどうすればよいですか?

異なる定義済みセットの小文字と大文字を使用して数学アルファベットを作成するにはどうすればよいですか?

現在、カリグラフィ記号には rsfs 文字を使用しています。ただし、対応する小文字のアルファベットがないので、他の文字を試し始めました。これまで使用していた$\mathscr{Ker}$ではなく と書けるようにする方法はありますか?$\mathscr{K}\mathcal{er}$

答え1

txfonts.styアルファベットに が何をしているかに基づいて、これを実行する方法を以下に示します\varmathbb。詳細が示されていないため、小文字のアルファベットは Chancery フォント (コード名pzc) から取得されているものと想定しました。もちろん、Ker のスペースの悪さが示すように、この 2 つはまったくうまく連携しません。そのため、必要に応じてコードを調整する必要があります。

コードの結果

\documentclass{article}

\DeclareSymbolFont{mathscrUC}{U}{rsfs}{m}{n}  % Formal Script for uppercase
\DeclareSymbolFont{mathscrLC}{OT1}{pzc}{m}{n} % Chancery for lowercase

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\makeatletter
%%%%%%%%%%%%%%%%%% code from txfonts.sty (for \varmathbb) %%%%%%%%%%%%%%%%%
\DeclareRobustCommand*{\mathscr}[1]{\gdef\F@ntPrefix{mathscr@char@}%
  \@EachCharacter #1\@EndEachCharacter}
\long\def\DoLongFutureLet #1#2#3#4{% 
   \def\@FutureLetDecide{#1#2\@FutureLetToken
      \def\@FutureLetNext{#3}\else
      \def\@FutureLetNext{#4}\fi\@FutureLetNext}
   \futurelet\@FutureLetToken\@FutureLetDecide}
\def\DoFutureLet #1#2#3#4{\DoLongFutureLet{#1}{#2}{#3}{#4}}
\def\@EachCharacter{\DoFutureLet{\ifx}{\@EndEachCharacter}%
   {\@EachCharacterDone}{\@PickUpTheCharacter}}
\def\m@keCharacter#1{\csname\F@ntPrefix#1\endcsname}
\def\@PickUpTheCharacter#1{\m@keCharacter{#1}\@EachCharacter}
\def\@EachCharacterDone \@EndEachCharacter{}

%%%%%%%%%%%%%%%%%% defining each individual symbols %%%%%%%%%%%%%%%%%%%%%%%
\DeclareMathSymbol{\mathscr@char@A}{\mathord}{mathscrUC}{`A}
\DeclareMathSymbol{\mathscr@char@B}{\mathord}{mathscrUC}{`B}
\DeclareMathSymbol{\mathscr@char@C}{\mathord}{mathscrUC}{`C}
\DeclareMathSymbol{\mathscr@char@D}{\mathord}{mathscrUC}{`D}
\DeclareMathSymbol{\mathscr@char@E}{\mathord}{mathscrUC}{`E}
\DeclareMathSymbol{\mathscr@char@F}{\mathord}{mathscrUC}{`F}
\DeclareMathSymbol{\mathscr@char@G}{\mathord}{mathscrUC}{`G}
\DeclareMathSymbol{\mathscr@char@H}{\mathord}{mathscrUC}{`H}
\DeclareMathSymbol{\mathscr@char@I}{\mathord}{mathscrUC}{`I}
\DeclareMathSymbol{\mathscr@char@J}{\mathord}{mathscrUC}{`J}
\DeclareMathSymbol{\mathscr@char@K}{\mathord}{mathscrUC}{`K}
\DeclareMathSymbol{\mathscr@char@L}{\mathord}{mathscrUC}{`L}
\DeclareMathSymbol{\mathscr@char@M}{\mathord}{mathscrUC}{`M}
\DeclareMathSymbol{\mathscr@char@N}{\mathord}{mathscrUC}{`N}
\DeclareMathSymbol{\mathscr@char@O}{\mathord}{mathscrUC}{`O}
\DeclareMathSymbol{\mathscr@char@P}{\mathord}{mathscrUC}{`P}
\DeclareMathSymbol{\mathscr@char@Q}{\mathord}{mathscrUC}{`Q}
\DeclareMathSymbol{\mathscr@char@R}{\mathord}{mathscrUC}{`R}
\DeclareMathSymbol{\mathscr@char@S}{\mathord}{mathscrUC}{`S}
\DeclareMathSymbol{\mathscr@char@T}{\mathord}{mathscrUC}{`T}
\DeclareMathSymbol{\mathscr@char@U}{\mathord}{mathscrUC}{`U}
\DeclareMathSymbol{\mathscr@char@V}{\mathord}{mathscrUC}{`V}
\DeclareMathSymbol{\mathscr@char@W}{\mathord}{mathscrUC}{`W}
\DeclareMathSymbol{\mathscr@char@X}{\mathord}{mathscrUC}{`X}
\DeclareMathSymbol{\mathscr@char@Y}{\mathord}{mathscrUC}{`Y}
\DeclareMathSymbol{\mathscr@char@Z}{\mathord}{mathscrUC}{`Z}
\DeclareMathSymbol{\mathscr@char@a}{\mathord}{mathscrLC}{`a}
\DeclareMathSymbol{\mathscr@char@b}{\mathord}{mathscrLC}{`b}
\DeclareMathSymbol{\mathscr@char@c}{\mathord}{mathscrLC}{`c}
\DeclareMathSymbol{\mathscr@char@d}{\mathord}{mathscrLC}{`d}
\DeclareMathSymbol{\mathscr@char@e}{\mathord}{mathscrLC}{`e}
\DeclareMathSymbol{\mathscr@char@f}{\mathord}{mathscrLC}{`f}
\DeclareMathSymbol{\mathscr@char@g}{\mathord}{mathscrLC}{`g}
\DeclareMathSymbol{\mathscr@char@h}{\mathord}{mathscrLC}{`h}
\DeclareMathSymbol{\mathscr@char@i}{\mathord}{mathscrLC}{`i}
\DeclareMathSymbol{\mathscr@char@j}{\mathord}{mathscrLC}{`j}
\DeclareMathSymbol{\mathscr@char@k}{\mathord}{mathscrLC}{`k}
\DeclareMathSymbol{\mathscr@char@l}{\mathord}{mathscrLC}{`l}
\DeclareMathSymbol{\mathscr@char@m}{\mathord}{mathscrLC}{`m}
\DeclareMathSymbol{\mathscr@char@n}{\mathord}{mathscrLC}{`n}
\DeclareMathSymbol{\mathscr@char@o}{\mathord}{mathscrLC}{`o}
\DeclareMathSymbol{\mathscr@char@p}{\mathord}{mathscrLC}{`p}
\DeclareMathSymbol{\mathscr@char@q}{\mathord}{mathscrLC}{`q}
\DeclareMathSymbol{\mathscr@char@r}{\mathord}{mathscrLC}{`r}
\DeclareMathSymbol{\mathscr@char@s}{\mathord}{mathscrLC}{`s}
\DeclareMathSymbol{\mathscr@char@t}{\mathord}{mathscrLC}{`t}
\DeclareMathSymbol{\mathscr@char@u}{\mathord}{mathscrLC}{`u}
\DeclareMathSymbol{\mathscr@char@v}{\mathord}{mathscrLC}{`v}
\DeclareMathSymbol{\mathscr@char@w}{\mathord}{mathscrLC}{`w}
\DeclareMathSymbol{\mathscr@char@x}{\mathord}{mathscrLC}{`x}
\DeclareMathSymbol{\mathscr@char@y}{\mathord}{mathscrLC}{`y}
\DeclareMathSymbol{\mathscr@char@z}{\mathord}{mathscrLC}{`z}
\makeatother
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{document}

$\mathscr{AaBbCcDdEeFfGgHhIiJjKkLlMm}$

$\mathscr{NnOoPpQqRrSsTtUuVvWwXxYyZz}$

$\mathscr{Ker}$

\end{document}

答え2

この問題に対する別のアプローチ: 指定されたフォントから仮想フォントを作成し、それを数学のアルファベットとして使用します。仮想フォントの入門書は次のとおりです。仮想フォントを作成するには?

関連情報