-
Notifications
You must be signed in to change notification settings - Fork 14
Open
Description
次のようなコードでh指定した場合,オブジェクトの前後のアキが不均等になります.
\documentclass{jsarticle}
\begin{document}
■□□□□■□□□□■□□□□■□□□□■□□□□■□□□□■□□□□■□□□□
\begin{figure}[h]
\frame{\phantom{\rule{15\cHT}{15\cwd}}}
\end{figure}
■□□□□■□□□□■□□□□■□□□□■□□□□■□□□□■□□□□■□□□□
\end{document}
期待する挙動は前後のアキが均等であることです.
単純には,@addtocurcolを次のように変更すればよいかと思います.
\def \@addtocurcol {%
\@insertfalse
\@setfloattypecounts
\ifnum \@fpstype=8
\else
\ifnum \@fpstype=24
\else
\@flsettextmin
\advance \@textmin \@textfloatsheight
\@reqcolroom \@pageht
\ifdim \@textmin>\@reqcolroom
\@reqcolroom \@textmin
\fi
\advance \@reqcolroom \ht\@currbox
\ifdim \@colroom>\@reqcolroom
\@flsetnum \@colnum
\ifnum \@colnum>\z@
\@bitor\@currtype\@deferlist
\if@test
\else
\@bitor\@currtype\@botlist
\if@test
\@addtobot
\else
\ifodd \count\@currbox
\advance \@reqcolroom \intextsep
\ifdim \@colroom>\@reqcolroom
\global \advance \@colnum \m@ne
\global \advance \@textfloatsheight \ht\@currbox
\global \advance \@textfloatsheight 2\intextsep
\@cons \@midlist \@currbox
\if@nobreak
\nobreak
\@nobreakfalse
\everypar{}%
\else
\addpenalty \interlinepenalty
\fi
\vskip \intextsep
\box\@currbox
\penalty\interlinepenalty
% \vskip\intextsep% <- 変更
\vskip\dimexpr\intextsep-\cvs+\cHT\relax
\ifnum\outputpenalty <-\@Mii \vskip -\parskip\fi
\outputpenalty \z@
\@inserttrue
\fi
\fi
\if@insert
\else
\@addtotoporbot
\fi
\fi
\fi
\fi
\fi
\fi
\fi
\if@insert
\else
\@resethfps
\@cons\@deferlist\@currbox
\fi
}
Metadata
Metadata
Assignees
Labels
No labels