这是我排版多项式的除法遇到的问题,由于打算用displaystyle模式,表格列空白间距我不会调整。
\documentclass[a5paper]{ctexart}
\usepackage{ctex}
\usepackage{amsmath,mathtools}
\newcommand\dif{\mathop{}\!\mathrm{d}}
\usepackage{array}
\usepackage{polynom}
\usepackage{scalerel}
\newcommand{\longdiv}{\smash{\mkern-0.43mu\vstretch{1.34}{\hstretch{0.9}{)}}\mkern-5.95mu\vstretch{1.34}{\hstretch{0.9}{)}}}}
\begin{document}
\[\arraycolsep=1pt
%\renewcommand\arraystretch{1.2}
\begin{array}{*1r@{\hskip\arraycolsep}c@{\hskip\arraycolsep}*{8}{>{\textstyle}r}}
& & & & \frac{1}{2} & + & \frac{3y}{4} & + & \frac{y^2}{8} \\
\cline{2-9}
2+y & \longdiv & 1 & + & 2y & + & y^2 & & & \\
& & 1 & + & \frac{y}{2} & & & &\\
\cline{3-5}
\strut & & & & \frac{3y}{2} & + & y^2 & & \\
& & & & \frac{3y}{2} & + & \frac{3y^2}{4} & \\
\cline{5-7}
& & & & & & \frac{y^2}{4} & & \\
& & & & & & \frac{y^2}{4} & + & \frac{y^3}{8}\\
\cline{7-9}
& & & & & & & - & \frac{y^3}{8}\\
\end{array}\qquad
\begin{array}{*1r@{\hskip\arraycolsep}c@{\hskip\arraycolsep}*{8}{>{\displaystyle}r}}
& & & & \frac{1}{2} & + & \frac{3y}{4} & + & \frac{y^2}{8} \\
\cline{2-9}
2+y & \longdiv & 1 & + & 2y & + & y^2 & & & \\
& & 1 & + & \frac{y}{2} & & & &\\
\cline{3-5}
\strut & & & & \frac{3y}{2} & + & y^2 & & \\
& & & & \frac{3y}{2} & + & \frac{3y^2}{4} & \\
\cline{5-7}
& & & & & & \frac{y^2}{4} & & \\
& & & & & & \frac{y^2}{4} & + & \frac{y^3}{8}\\
\cline{7-9}
& & & & & & & - & \frac{y^3}{8}\\
\end{array}\]
\[\polylongdiv[vars=x]{x^5-\frac{3}{2}x^3+\frac{5}{3}x+9}{1+\frac{2}{3}x^2}\]
\end{document}
相关截图如下
式子出自金玉民的《积分的方法与技巧》
尝试过\[2mm]以及cellspace宏包,但是依然没有解决。
希望能获得大家的帮助!谢谢
可考虑使用 spacingtricks 宏包。修改效果见红框内。
\documentclass[a5paper]{ctexart}
\usepackage{ctex}
\usepackage{amsmath,mathtools}
\newcommand\dif{\mathop{}\!\mathrm{d}}
\usepackage{array}
\usepackage{polynom}
\usepackage{scalerel}
\newcommand{\longdiv}{\smash{\mkern-0.43mu\vstretch{1.34}{\hstretch{0.9}{)}}\mkern-5.95mu\vstretch{1.34}{\hstretch{0.9}{)}}}}
\usepackage{spacingtricks}
\begin{document}
\[\arraycolsep=1pt
%\renewcommand\arraystretch{1.2}
\begin{array}{*1r@{\hskip\arraycolsep}c@{\hskip\arraycolsep}*{8}{>{\textstyle}r}}
& & & & \frac{1}{2} & + & \frac{3y}{4} & + & \frac{y^2}{8} \\
\cline{2-9}
2+y & \longdiv & 1 & + & 2y & + & y^2 & & & \\
& & 1 & + & \frac{y}{2} & & & &\\
\cline{3-5}
\strut & & & & \frac{3y}{2} & + & y^2 & & \\
& & & & \frac{3y}{2} & + & \frac{3y^2}{4} & \\
\cline{5-7}
& & & & & & \frac{y^2}{4} & & \\
& & & & & & \frac{y^2}{4} & + & \frac{y^3}{8}\\
\cline{7-9}
& & & & & & & - & \frac{y^3}{8}\\
\end{array}\qquad
\begin{array}{*1r@{\hskip\arraycolsep}c@{\hskip\arraycolsep}*{8}{>{\displaystyle}r}}
& & & & \vstrut[3ex]{5ex}\frac{1}{2} & + & \frac{3y}{4} & + & \frac{y^2}{8} \\
\cline{2-9}
2+y & \longdiv & 1 & + & 2y & + & y^2 & & & \\
& & 1 & + & \frac{y}{2} & & & &\\
\cline{3-5}
\strut & & & & \vstrut{4ex}\frac{3y}{2} & + & y^2 & & \\
& & & & \frac{3y}{2} & + & \frac{3y^2}{4} & \\
\cline{5-7}
& & & & & & \frac{y^2}{4} & & \\
& & & & & & \frac{y^2}{4} & + & \frac{y^3}{8}\\
\cline{7-9}
& & & & & & & - & \frac{y^3}{8}\\
\end{array}\]
\[\polylongdiv[vars=x]{x^5-\frac{3}{2}x^3+\frac{5}{3}x+9}{1+\frac{2}{3}x^2}\]
\end{document}
依据楼上行者的回答,最终的代码及效果整理如下:
法I. 解答源自行者, 使用spacingtricks
宏包, \vstrut[深度]{高度}
, 接着进行微调.
\documentclass[a5paper]{ctexart}
\usepackage{amsmath}
\newcommand\dif{\mathop{}\!\mathrm{d}}
\usepackage{array}
\usepackage{scalerel}
\newcommand{\longdiv}{\smash{\mkern-0.43mu\vstretch{1.34}{\hstretch{0.9}{)}}\mkern-5.95mu\vstretch{1.34}{\hstretch{0.9}{)}}}}
\usepackage{spacingtricks} %\vstrut[深度]{高度}
\begin{document}
\[\arraycolsep=1pt
\begin{array}{*1r@{\hskip\arraycolsep}c@{\hskip\arraycolsep}*{8}{>{\displaystyle}r}}
\vstrut[2.5ex]{3ex} & & & & \frac{1}{2} & + & \frac{3y}{4} & + & \frac{y^2}{8} \\
\cline{2-9}
2+y & \longdiv & 1 & + & 2y & + & y^2 & & & \\
& & 1 & + & \vstrut[2ex]{3ex}\frac{y}{2} & & & &\\
\cline{3-5}
\vstrut[2ex]{3.75ex} \strut & & & & \frac{3y}{2} & + & y^2 & & \\
\vstrut[2ex]{3.5ex} & & & & \frac{3y}{2} & + & \frac{3y^2}{4} & \\
\cline{5-7}
\vstrut[2ex]{4ex} & & & & & & \frac{y^2}{4} & & \\
\vstrut[2ex]{4ex} & & & & & & \frac{y^2}{4} & + & \frac{y^3}{8}\\
\cline{7-9}
\vstrut[2ex]{4ex} & & & & & & & - & \frac{y^3}{8}\\
\end{array}\]
\end{document}
法II. 解答源自行者, 使用arraycols
宏包的 x
列格式, 接着微调0.5ex
\documentclass[a5paper]{ctexart}
\usepackage{amsmath}
\newcommand\dif{\mathop{}\!\mathrm{d}}
\usepackage{array}
\usepackage{scalerel}
\newcommand{\longdiv}{\smash{\mkern-0.43mu\vstretch{1.34}{\hstretch{0.9}{)}}\mkern-5.95mu\vstretch{1.34}{\hstretch{0.9}{)}}}}
\usepackage{arraycols}
\begin{document}
\[\arraycolsep=1pt
\begin{array}{*1x@{\hskip\arraycolsep}x@{\hskip\arraycolsep}*{8}{>{\displaystyle}x}}
& & & & \frac{1}{2} & + & \frac{3y}{4} & + & \frac{y^2}{8} \\
\cline{2-9}
2+y & \longdiv & 1 & + & 2y & + & y^2 & & & \\[-0.5ex]
& & 1 & + & \frac{y}{2} & & & &\\
\cline{3-5}
\strut & & & & \frac{3y}{2} & + & y^2 & & \\[-0.5ex]
& & & & \frac{3y}{2} & + & \frac{3y^2}{4} & \\
\cline{5-7}
& & & & & & \frac{y^2}{4} & & \\[-0.5ex]
& & & & & & \frac{y^2}{4} & + & \frac{y^3}{8}\\
\cline{7-9}
& & & & & & & - & \frac{y^3}{8}\\
\end{array}\]
\end{document}
用tabularray宏包可以更好的实现表格内容与格式的分离,见另一种解决方案见。
一个(可能是)更好的解决方案:使用 arraycols 宏包的 x 列格式。