Marca cruzada em uma expressão dentro do modo matemático em látex

Marca cruzada em uma expressão dentro do modo matemático em látex

Como posso colocar uma marca cruzada em uma expressão dentro de um modo matemático usando látex como abaixo? insira a descrição da imagem aqui

Responder1

Talvez isso seja um exagero, mas você pode construir o operador \timessobreposto \longrightarrowcom

\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}

aparecer como

seta longa x direita

Responder2

\nrightarrow+ espelhado\nrightarrow

Talvez a cruz seja um pouco pequena, pelo menos o tamanho e a posição da cruz vêm de um designer de fontes, porque o exemplo se sobrepõe \nrightarrowa uma versão espelhada dela:

\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}

Resultado

\rightarrow+ \setminus+ espelhado\setminus

Uma variante com cruz maior (para meu gosto é muito grande):

\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}

Resultado

Observações:

  • \mathpaletteé usado para obter a adoção do símbolo nos quatro estilos matemáticos.

Responder3

Uma maneira mais simples de sobrepor \timesuma seta longa para a direita:

\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}

insira a descrição da imagem aqui

Responder4

\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}

insira a descrição da imagem aqui

informação relacionada