ラテックスの数学モード内の式にクロスマークを付ける

ラテックスの数学モード内の式にクロスマークを付ける

以下のように、LaTeX を使用して数式モード内の式にクロスマークを付けるにはどうすればよいですか? ここに画像の説明を入力してください

答え1

\timesこれはやりすぎかもしれませんが、オーバーレイされた演算子を\longrightarrow次のように構築できます。

\documentclass[]{article}

\def\longxrightarrow{\mathrel{%
    \mathchoice{\LongXRightArrow}{\LongXRightArrow}{\scriptsize\LongXRightArrow}{\tiny\LongXRightArrow}%
}}
\def\LongXRightArrow{{%
    \setbox0\hbox{\ensuremath{\longrightarrow}}%
    \rlap{\hbox to \wd0{\ensuremath{\hss\times\hss}}}\box0
}}



\begin{document}

$   a^b  \longxrightarrow c^d $

\end{document}

として現れる

長x右矢印

答え2

\nrightarrow+ ミラーリング\nrightarrow

おそらく十字架は少し小さいでしょう。少なくとも十字架のサイズと位置はフォント デザイナーから来ています。例では、\nrightarrow十字架の鏡像バージョンが重ねて表示されているからです。

\documentclass{article}

\usepackage{amssymb}
\usepackage{graphicx}

\makeatletter
\newcommand*{\crossrightarrow}{%
  \mathrel{%
    \mathpalette\@crossrightarrow{}%
  }%
}
\newcommand*{\@crossrightarrow}[2]{%
  % #1: math style
  % #2: unused
  \sbox0{$#1\nrightarrow\m@th$}%
  \sbox2{$#1\vcenter{}$}%
  \sbox2{\raisebox{\ht2}{\scalebox{1}[-1]{\raisebox{-\ht2}{\copy0}}}}%
  \ht2=\ht0 %
  \dp2=\dp2 %
  \rlap{\unhcopy2}%
  \copy0 %
}
\makeatother

\begin{document}
\[
  a^b \crossrightarrow a^c
\]
\end{document}

結果

\rightarrow+ \setminus+ ミラーリング\setminus

より大きな十字架を持つバリエーション(私の好みには大きすぎる):

\documentclass{article}

\usepackage{graphicx}

\makeatletter
\newcommand*{\crossrightarrow}{%
  \mathrel{%
    \mathpalette\@crossrightarrow{}%
  }%
}
\newcommand*{\@crossrightarrow}[2]{%
  \sbox0{$#1\rightarrow\m@th$}%
  \sbox2{$#1\setminus\m@th$}%
  \copy0 %
  \kern-\wd0 %
  \hbox to \wd0{%
    \hspace{0pt plus 1fil}%
    \rlap{\scalebox{-1}[1]{\copy2}}%
    \copy2 %
    \hspace{0pt plus 1.5fil}%                                           
    % the factor for `fil' controls the horizontal position of the cross
  }%
}
\makeatother

\begin{document}
\[
  a^b \crossrightarrow a^c
\]
\end{document}

結果

備考:

  • \mathpalette4 つの数学スタイルに記号を採用するために使用されます。

答え3

\times長い右矢印を重ねるより簡単な方法:

\documentclass{article}

\makeatletter
\newcommand{\longxarrow}[1]{%
  \mathrel{\vphantom{\to}\mathpalette\longx@rrow{#1}}% arrows are bigger than \times
}
\newcommand{\longx@rrow}[2]{%
  \ooalign{\hidewidth$#1\times\m@th$\hidewidth\cr$#1#2\m@th$\cr}%
}
\makeatother

\newcommand{\longxrightarrow}{\longxarrow{\longrightarrow}}
\newcommand{\longxleftarrow}{\longxarrow{\longleftarrow}}

\begin{document}

$A\longxrightarrow B_{\longxrightarrow}$

$A\longxleftarrow B_{\longxleftarrow}$

\end{document}

ここに画像の説明を入力してください

答え4

\documentclass{article}
\usepackage{stackengine}
\usepackage{graphicx}
\usepackage{xcolor}
\begin{document}
$a^b 
  \mathrel{\stackengine{-1.3pt}{$\rightarrow$}%
    {\color{red}\scalebox{1.6}{$\times$}\kern3pt}{O}{c}{F}{T}{L}} 
a^c$
\end{document}

ここに画像の説明を入力してください

関連情報