使用 Lucida Math 字体的大笛卡尔积和笛卡尔和符号?

使用 Lucida Math 字体的大笛卡尔积和笛卡尔和符号?

如何才能获得与我的文档的 Lucida Bright 和 Lucida Math 字体兼容的大型笛卡尔积与笛卡尔和符号?

我知道这个帖子我怎样才能得到一个大十字来表示广义笛卡尔积?。但是,使用 中的符号的解决方案mathabx会创建与 Lucida 字体相比似乎太轻的符号——尤其是与 Lucida Math 大乘积和总和符号相比。请看这个:

\documentclass[12pt]{article}
\usepackage{lucidabr}
\usepackage[fleqn]{amsmath}

% extracted from mathabx package:
\DeclareFontFamily{U}{mathx}{\hyphenchar\font45}
\DeclareFontShape{U}{mathx}{m}{n}{
      <5> <6> <7> <8> <9> <10>
      <10.95> <12> <14.4> <17.28> <20.74> <24.88>
      mathx10
      }{}
\DeclareSymbolFont{mathx}{U}{mathx}{m}{n}
\DeclareFontSubstitution{U}{mathx}{m}{n}
\DeclareMathSymbol{\bigplus}        {1}{mathx}{"90}
\DeclareMathSymbol{\bigtimes}       {1}{mathx}{"91}

\begin{document}
\Large

Using \verb!\bigtimes! and \verb!\bigplus!, respectively, \dots

Given a family $(X_{i})_{i \in I}$ of sets, its cartesian product is $\bigtimes_{i \in I} X_{i}$,
and its cartesian sum $\bigplus_{i \in I} X_{i}$.

The same, in display math:
%
\begin{equation*}
\bigtimes_{i \in I} X_{i} \quad\text{and}\quad \bigplus_{i \in I} X_{i}
\end{equation*}

Compare product $\prod_{i \in I} a_{i}$ and sum $\sum_{i \in I} a_{i}$.
\begin{equation*}
\prod_{i \in I} a_{i} \quad\text{and}\quad \sum_{i \in I} a_{i}
\end{equation*}

\end{document}

输出:

笛卡尔积与和

我知道在以下答案中描述了制作更大数学符号的各种方法如何控制公式中数学符号的大小?。但是,以上述方式制作更大的加号和乘号符号仍然会使符号太轻,在我看来,无法与 Lucida 和 Lucida 数学字体协调,或者无法与大求和和乘积符号匹配。

解决方案-关注 egreg

对我来说最有效的是使用 egreg 的定义,\bigplus但修改他的参数\bigtimes如下:

\makeatletter
\DeclareRobustCommand{\bigtimes}{%
  \mathop{\vphantom{\sum}\mathpalette\@bigtimes\relax}\slimits@
}
\newcommand{\@bigtimes}[2]{\vcenter{\hbox{\make@bigtimes{#1}}}}
\newcommand{\make@bigtimes}[1]{%
  \sbox\z@{$\m@th#1\sum$}%
  \setlength{\unitlength}{\wd\z@}%
  \begin{picture}(1,1)
    \roundcap
    \linethickness{.17ex}
    \Line(0.01,0)(.85,.99)
    \Line(0.01,.99)(.85,0.0)
  \end{picture}%
}
\makeatother

答案1

您可以自己定义符号:

\documentclass{article}
\usepackage{lucimatx}
\usepackage[fleqn]{amsmath}
\usepackage{pict2e}

\makeatletter
\DeclareRobustCommand{\bigplus}{%
  \mathop{\vphantom{\sum}\mathpalette\@bigplus\relax}\slimits@
}
\newcommand{\@bigplus}[2]{\vcenter{\hbox{\make@bigplus{#1}}}}
\newcommand{\make@bigplus}[1]{%
  \sbox\z@{$\m@th#1\sum$}%
  \setlength{\unitlength}{\wd\z@}%
  \begin{picture}(1.4,1.4)
  %\roundcap
  \linethickness{.17ex}
  \Line(.7,.14)(.7,1.26)
  \Line(.14,.7)(1.26,.7)
  \end{picture}%
}
\DeclareRobustCommand{\bigtimes}{%
  \mathop{\vphantom{\sum}\mathpalette\@bigtimes\relax}\slimits@
}
\newcommand{\@bigtimes}[2]{\vcenter{\hbox{\make@bigtimes{#1}}}}
\newcommand{\make@bigtimes}[1]{%
  \sbox\z@{$\m@th#1\sum$}%
  \setlength{\unitlength}{\wd\z@}%
  \begin{picture}(1,1)
  %\roundcap
  \linethickness{.17ex}
  \Line(.1,.1)(.9,.9)
  \Line(.1,.9)(.9,.1)
  \end{picture}%
}
\makeatother

\begin{document}

$\bigplus_{i\in I} X_i \bigtimes_{i\in I} X_i \sum_{i\in I} X_i \prod_{i\in I} X_i$

\bigskip

$\displaystyle
\bigplus_{i\in I} X_i \bigtimes_{i\in I} X_i \sum_{i\in I} X_i \prod_{i\in I} X_i$

\end{document}

我离开了\roundcap(但发表了评论),因为当使用 Computer Modern 而不是 Lucida 时它会很有用。

如您所见,的宽度\bigtimes与 相同\sum,而\bigplus宽 40%(因此这两个符号本质上是彼此的旋转)。

不断尝试,\linethickness直到满意为止。

在此处输入图片描述

编辑 2019 年 9 月

这应该可以修复下标与指导规则的轻微错位,如最后两行所示。

\documentclass{article}
\usepackage{lucimatx}
\usepackage[fleqn]{amsmath}
\usepackage{pict2e}

\makeatletter
\DeclareRobustCommand{\bigplus}{%
  \mathop{\vphantom{\sum}\mathpalette\@bigplus\relax}\slimits@
}
\newcommand{\@bigplus}[2]{\smash{\vcenter{\hbox{\make@bigplus{#1}}}}}
\newcommand{\make@bigplus}[1]{%
  \sbox\z@{$\m@th#1\sum$}%
  \setlength{\unitlength}{\wd\z@}%
  \begin{picture}(1.4,1.4)
  %\roundcap
  \linethickness{.17ex}
  \Line(.7,.14)(.7,1.26)
  \Line(.14,.7)(1.26,.7)
  \end{picture}%
}
\DeclareRobustCommand{\bigtimes}{%
  \mathop{\vphantom{\sum}\mathpalette\@bigtimes\relax}\slimits@
}
\newcommand{\@bigtimes}[2]{\vcenter{\hbox{\make@bigtimes{#1}}}}
\newcommand{\make@bigtimes}[1]{%
  \sbox\z@{$\m@th#1\sum$}%
  \setlength{\unitlength}{\wd\z@}%
  \begin{picture}(1,1)
  %\roundcap
  \linethickness{.17ex}
  \Line(.1,.1)(.9,.9)
  \Line(.1,.9)(.9,.1)
  \end{picture}%
}
\makeatother

\begin{document}

$
\bigplus_{i\in I} X_i \bigtimes_{i\in I} X_i \sum_{i\in I} X_i \prod_{i\in I} X_i
\bigcup_{i\in I} X_i
$

\bigskip

$\displaystyle
\bigplus_{i\in I} X_i \bigtimes_{i\in I} X_i \sum_{i\in I} X_i \prod_{i\in I} X_i
\bigcup_{i\in I} X_i
$

\bigskip

\def\test{\makebox[0pt][l]{\kern-2cm\vrule height 0pt depth 0.1pt width \textwidth}}
$
\bigplus_{i\in I\test} X_i \bigtimes_{i\in I} X_i \sum_{i\in I} X_i \prod_{i\in I} X_i
\bigcup_{i\in I} X_i
$

\bigskip

$\displaystyle
\bigplus_{i\in I\test} X_i \bigtimes_{i\in I} X_i \sum_{i\in I} X_i \prod_{i\in I} X_i
\bigcup_{i\in I} X_i
$

\end{document}

在此处输入图片描述

相关内容