如何改进我的unicode / tikz启用的大积分符号?

如何改进我的unicode / tikz启用的大积分符号?

我发现以下内容大积分符号在我问了(几乎?)重复的问题之后是否有一个更加符合印刷要求的 bigints 包?并决定给出的解决方案不是很好。我发现 unicode 字符的U+2320 TOP HALF INTEGRAL实现方式\inttopunicode-mathU+2321 BOTTOM HALF INTEGRAL 实现方式为\intbottom,所以我在 TikZ 中快速尝试了一下。(还有U+23AE INTEGRAL EXTENSION)。它看起来像这样:(第 (1) 行是比较的正常值\int

在此处输入图片描述

我看到的问题-

  • 左右两侧的空白太多
  • 基线混乱
  • 静态角度倾斜导致与足够大的被积函数相交
  • 使用\draw[line width = 1pt]可能并不完美,但在印刷上非常接近完美。
  • 这绝对不是字体不可知的(CMU 甚至没有符号)但我对此没意见。

我决定从头开始再试一次,我认为这可能更接近一个好的结果(尽管目前还不能使用)。它的代码将遵循第一次尝试的代码。在这个中,

  • 基线问题已修复,但空格尚未修复(我应该只留下几个\!s 吗?)
  • 静态角现在对于短积分函数也是一个问题
  • unicode 字符 ⎮ 似乎更好,但我需要以某种方式实现一个 for 循环才能使其连接。

在此处输入图片描述

有人能帮我解决这些问题吗?如果不是成品,请提供一张制作完成命令的草图,我将不胜感激。特别是,我希望能够测量被积函数的宽度和高度,以帮助我正确设置坐标(我一直在尝试\widthof\heightof但我无法让它们正常工作),以及如何测量正确的角度来旋转我的积分符号(我甚至不确定如何以示意图的方式做到这一点)

代码+示例输出:

\documentclass[leqno]{article} 
\usepackage{tikz}
\usepackage{xparse}
\RequirePackage{amsmath,amssymb} 
%\usetikzlibrary{calc}
\RequirePackage{unicode-math}
\setmathfont{xits-math.otf}

\newcommand{\dx}{\text{d}x} %maybe I shouldnt use both newcommand and xparse
\NewDocumentCommand{\mybigint}{ m m m }{%
%
\vcenter{\hbox{%
\begin{tikzpicture}[rotate = -15, transform shape]
\tikzstyle text node=[rotate=15]
  \node[anchor=west, align=left] (body){$\phantom{ #3 }$};
  \node[text node, anchor=west] {$ \phantom{#1} #3 $};
     \node at (body.north west) (top) {$\inttop $};
     \node at (body.south west) (bottom) {$\intbottom$};
     \draw[black,line width = 1pt] (body.north west) -- (body.south west);
     \node[text node] at (bottom.east) {\scriptsize $#1$};
     \node[text node, anchor = south] at (top.east) {\sczriptsize $#2$};
\end{tikzpicture}
}}%
%
}

\begin{document}
\begin{align} 
\int_A^B f(x) \ \dx +1
&= \int_A^B f(x) \ \dx + 1 \\
&= \mybigint{A}{B}{f(x) \ \dx} +1\\
&= \mybigint{A}{B}{\left[\begin{matrix} 1& 2 & 3 \\ 4 & 5 & 6 \\ 7 & 8 & 9 \end{matrix}\right] \ \dx}  +1\\
&= \mybigint{A}{B}{\left[\begin{matrix} 1 & 2 \\ 3 & 4 \\ 5 & 6 \\ 7 & 8 \end{matrix}\right] \ \dx} +1\\
&= \mybigint{A}{B}{\left[\begin{matrix} 1 \\2 \\ 3 \\ 4 \\ 5 \\ 6 \\ 7 \\ 8 \\ 9 \end{matrix}\right] \ \dx} +1\\
&= \mybigint{A}{B}{\left[\begin{matrix} 1 \\2 \\ 3 \\ 4 \\ 5 \\ 6 \\ 7 \\ 8 \\ 9  \\ 10 \\ 11 \\ 12 \end{matrix}\right] \ \dx } + 1 
\end{align}

%found the symbols at http://www.latex-community.org/forum/viewtopic.php?f=48&t=11764


\end{document}

第二次尝试的代码:

\NewDocumentCommand{\mybigint}{ m m m }{%
%
\hbox{%
\begin{tikzpicture}[ baseline = 0]
\tikzstyle rotation=[rotate=-15 ]

  \node[anchor = base] (body) {$\phantom{ #1 } #3$};
     \node[rotation] at (body.north west) (top) {$\displaystyle \inttop $};
     \node at (body.south west) (belowtop) {};
     \node[rotation] at (belowtop.west) (bottom) {$\intbottom$};
     \node[rotation] at ($(top)!0.5!(bottom)$) {$⎮$};
     \node[] at (bottom.east) {\scriptsize $\!\!\!\!\!#1$};
     \node[anchor = north] at (top.north east) {\scriptsize $\!\!\!\!\!#2$};
\end{tikzpicture}
}%
%
}

相关内容