より良い?

より良い?

表示モードで、次の合計記号を下付き文字と同じ幅(ただし、高さは大きくしない)にしたいと思います。

\[ \sum_{i_1, i_2,\cdots,i_m=1}^n\]

答え1

あなたはこんなものを望んでいないと思う

ああ、それはひどいですね!

または

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

最初の画像のコード

\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx}

\newcommand{\widesum}[2]{%
  \mathop{\vcenter{\hbox{\dowidesum{#1}{#2}}}}_{#1}^{#2}
}
\newcommand{\dowidesum}[2]{%
  \sbox0{$\scriptstyle#1$}%
  \dimen0=\wd0
  \sbox0{$\scriptstyle#2$}%
  \ifdim\wd0>\dimen0 \dimen0=\wd0\fi
  \resizebox{\dimen0}{\height}{$\displaystyle\sum$}%
}

\begin{document}

\[
\widesum{i_1, i_2,\cdots,i_m=1}{n}
\]

\end{document}

2番目の画像のコード

着替える\heightだけ!

より良い?

\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx}

\begin{document}

\[
\sum_{\substack{1\le i_k\le n\\1\le k\le m}}
\]

\end{document}

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

答え2

これには装飾を使用できますxparse

\documentclass{article}
\usepackage{xparse}

\ExplSyntaxOn

\box_new:N \l_tmpc_box
\cs_new:Nn \dim_max:nnn
{
  \dim_max:nn { \dim_max:nn { #1 } { #2 } } { #3 }
}

\NewDocumentCommand \dowidesum { m m }
{
  \hbox_set:Nn \l_tmpa_box { $\mathsurround=0pt\scriptstyle#1$ }
  \hbox_set:Nn \l_tmpb_box { $\mathsurround=0pt\scriptstyle#2$ }
  \hbox_set:Nn \l_tmpc_box { $\mathsurround=0pt\displaystyle\sum$ }
  \dim_set:Nn \l_tmpa_dim
  {
    \dim_max:nnn
    { \box_wd:N \l_tmpa_box }
    { \box_wd:N \l_tmpb_box }
    { \box_wd:N \l_tmpc_box }
  }
  \box_resize_to_wd_and_ht:Nnn \l_tmpc_box { \l_tmpa_dim } { \box_ht:N \l_tmpc_box }
  \mathop{\box_use:N \l_tmpc_box}\limits\sp{#1}\sb{#2}
}

\ExplSyntaxOff

\NewDocumentCommand \widesum {e{^_}}
{
  \dowidesum{#1}{#2}
}

\begin{document}

\[ \widesum_{i_1, i_2,\cdots,i_m=1}^n \]

\end{document}

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

関連情報