我正在写一些用于插入包装图片的命令。
参见该主题:如何在带有公式的定理中将图片包装在列表中?
现在我发现,即使\begin{wrapfigure}...\end{wrapfigure}
没有可选参数(即“窄线数”),也会得到相当正确的窄线数。
我的意思是它以某种方式知道图片的高度并按照我的需要去做。
但我尝试去理解或创建自己的机制来实现这一点,但没有成功。
例如,我该如何在以下代码中做到这一点?我[1=5,3=0]
在 的定义中addpicture
,其中 5 条窄线的数量不会随着图片高度的增加而增加。但是,如果您改变图片高度,wrapfig 会在第二页上产生这种效果。
\documentclass{article}
\usepackage{graphicx}
\usepackage{amsthm}
\usepackage{caption}
\usepackage{lipsum}
\usepackage{xargs}
\usepackage{mwe}
\usepackage{wrapfig}
\input{insbox.tex}
\usepackage{threeparttable}
\newcommandx\addpicture[4][1=5,3=0]{%
\InsertBoxR{#3}{\begin{threeparttable}%
\begin{tabular}{c@{}}\includegraphics[width=#4\textwidth]{#2}\end{tabular}%
\captionof{figure}{}\end{threeparttable}}[#1]}
\begin{document}
\addpicture{example-image-a}{0.3}
\lipsum[1]
\lipsum[2]
\newpage
\begin{wrapfigure}{r}{0.5\textwidth}
\includegraphics[width=0.5\textwidth]{example-image-a}
\end{wrapfigure}
\lipsum[1]
\lipsum[2]
\end{document}
答案1
呵呵。我上周问的所有问题都在书本和互联网上找到了答案。(那么,我为什么要问他们呢?!*\捂脸*)
我是这个问题的作者——请记住这一点。
也许这个算法不够专业,使用了太多变量等等,但它确实有效。你可以在下面看到它并给我建议或自己使用它。
\documentclass{article}
\usepackage{graphicx}
\usepackage{mwe}
\usepackage{wrapfig}
\usepackage[colorlinks]{hyperref}
\usepackage{printlen}
\uselengthunit{cm}
\usepackage{forloop}
\newcounter{ct}
\newlength\imageheight
\newlength\imagewidth
\newcount\narrowlinect
\newcount\linelength
\narrowlinect=0\relax
\linelength=\baselineskip\relax
\begin{document}
\settoheight\imageheight{\includegraphics[width=\textwidth]{example-image-a}}
\settowidth\imagewidth{\includegraphics[width=\textwidth]{example-image-a}}
\begin{wrapfigure}{r}{\textwidth}
\includegraphics[width=\textwidth]{example-image-a}
\caption{}
\end{wrapfigure}
\forloop{ct}{1}{\value{ct} < 28}{\arabic{ct} \newline}
\mbox{}
\narrowlinect=\imageheight\relax
\setcounter{ct}{\numexpr((\narrowlinect)/\linelength+2)\relax}
\arabic{ct}
\end{document}