Centralize um `\includegraphics` dentro de um `\def`

Centralize um `\includegraphics` dentro de um `\def`

Esta pergunta é motivada por uma resposta que eu estava dandoaqui, no qual usei \includegraphics{...}dentro de uma \defdefinição, para incluir gráficos em um contexto in-line.

Pergunta:Como faço para centralizar o gráfico incluído, quando uso in-line, sem recorrer a métodos manuais como \hspace{}? Eu tentei com \centering, mas não surtiu efeito. Eu adicionei fboxo exemplo abaixo para torná-lo mais aparente.

gráfico alinhado com (fora) centralização?

\documentclass{article}
\usepackage{graphicx,keystroke,scalerel}
\renewcommand{\fboxsep}{0pt}
\def\abcd{%
    {\centering \fbox{\scalerel*{\includegraphics{example-image-a}}{X}}}
}

\begin{document}
    This is an in-line graphic \fbox{\keystroke{\abcd}}.

    This is an in-line graphic \fbox{\abcd} with some space on either side.
\end{document}

obs. Eu estava usando \keystroke{...}do keystrokepacote, mas o problema é mais geral e pode ser descritosemo keystrokepacote. No entanto, resolva isso em sua resposta se for diferente do caso sem usar keystroke, pois gostaria de melhorar minha resposta.

Responder1

Conforme observado por outros, existem vários problemas. Espaços perdidos estavam surgindo, porque as linhas dentro de uma definição de macro não terminavam em %. Além disso, \centeringnão tem relevância fora do mecanismo de configuração de parágrafo do TeX, que não se aplica dentro de um arquivo \fbox. Finalmente, \fboxsepé um comprimento, não uma definição e, portanto, deve ser definido como tal. No TeX, isso seria \fboxsep=0pt\relax, enquanto no LaTeX, pode-se usar preferencialmente \setlength{\fboxsep}{0pt}.

\documentclass{article}
\usepackage{graphicx,keystroke,scalerel}
\setlength{\fboxsep}{0pt}
\newcommand\abcd{\fbox{\scalerel*{\includegraphics{example-image-a}}{X}}}
\begin{document}
    This is an in-line graphic \fbox{\keystroke{\abcd}}.

    This is an in-line graphic \fbox{\abcd} with some space on either side.
\end{document}

insira a descrição da imagem aqui

informação relacionada