为什么没有人知道如何在任何情况下以理想的方式插入图片?!

为什么没有人知道如何在任何情况下以理想的方式插入图片?!

我想让文字流动到图片中,就像在书中一样:

在此处输入图片描述

在@Johannes_B 的建议下,我在 的帮助下完成了这件事minipage,但这并不完全适合我。

  1. 看看这个。这是我的文档的第一页。你看出来错了吗? 在此处输入图片描述
  2. 我想始终在页面外侧插入图片!但这永远无法实现。
  3. 如何将解决此问题的机制添加到我的添加图片的超级功能中。(在此问题之前,它解决了我的所有问题,包括列表、环境、项目等)

  4. 为什么没有人知道如何在任何情况下以理想的方式插入图片?!

就像 Office 2014 - 只需按下一个按钮。

我不相信所有的 latex 用户在插入图片时都会做大量的手动工作。但我已经尝试了三个星期了!

我有 200 张图片要插入我的书中,如果我愿意尝试插入它手动,我要疯了!

我真的很震惊,有很多情况什么都不起作用。

\documentclass{book}
\usepackage{graphicx}
\usepackage{mwe}
\usepackage{amsmath}
\usepackage{microtype}
\usepackage{caption}
\input{insbox.tex}
\usepackage{threeparttable}
\usepackage{changepage}
\usepackage{xargs}
\usepackage[showframe]{geometry}
\usepackage{printlen}  
\newtheorem{thm}{Theorem}


\newcounter{ct}

\newlength\imageheight

\newcount\narrowlinect
\narrowlinect=0\relax 
    \newcounter{pictnumber}  
    \newcommand*{\wrapitem}{\apptocmd{\labelenumi}{\hskip\leftmargin}{}{}\item\apptocmd{\labelenumi}{\hskip-\leftmargin}{}{}}
    %
    \newcommandx{\InsertPictL}[4][1=0,3=0]{\refstepcounter{pictnumber}%
\settoheight\imageheight{\includegraphics[width=#4\textwidth]{#2}}
\narrowlinect=\imageheight\relax
\setcounter{ct}{\numexpr((\narrowlinect)/\baselineskip+2)\relax}
    \setlength{\leftskip}{\leftmargin}\mbox{}\vspace*{-\baselineskip}%
    \InsertBoxL{#1}{\begin{threeparttable}%
\begin{tabular}{c@{}}\includegraphics[width=#4\textwidth]{#2}\end{tabular}%
\caption*{Pict. \thepictnumber}\end{threeparttable}}[\numexpr(\value{ct}/2+#1+1)]\par
\hspace{\itemindent}
    }%

    \newcommandx{\InsertPictR}[4][1=0,3=0]{\refstepcounter{pictnumber}%
\settoheight\imageheight{\includegraphics[width=#4\textwidth]{#2}}
\narrowlinect=\imageheight\relax
\setcounter{ct}{\numexpr((\narrowlinect)/\baselineskip+2)\relax}
    \mbox{}\vspace*{-\baselineskip}\setlength{\leftskip}{\leftmargin}%
    \InsertBoxR{#1}{\hskip-\leftmargin\begin{threeparttable}%
\begin{tabular}{c@{}}\includegraphics[width=#4\textwidth]{#2}\end{tabular}%
\caption*{Pict. \thepictnumber}\end{threeparttable}\hskip\leftmargin}[\numexpr(\value{ct}/2+#1+1)]
    }%

\newcommandx{\InsertPict}[4][1=0,3=0]{%
\strictpagecheck%
\checkoddpage%
\ifoddpage
\InsertPictR[#1]{#2}[#3]{#4}
\else%
\InsertPictL[#1]{#2}[#3]{#4}
\fi%
}


\begin{document}
\noindent
\begin{minipage}[t]{0.7\textwidth}
\begin{thm}
\lipsum[1]
\begin{equation}
\int_\gamma f(z)\,dz = 0.
\end{equation}
\end{thm}
\end{minipage}%
\hfill%
\begin{minipage}[t]{0.3\textwidth}
\InsertBoxR{0}{\includegraphics[width=\dimexpr(\textwidth-2mm)]{example-image-a}}
\end{minipage}


\newpage
\begin{thm}\InsertPict{example-image-a}{0.3}
\lipsum[1]
\begin{equation}
\int_\gamma f(z)\,dz = 0.
\end{equation}
\end{thm}


\newpage
\begin{thm}\InsertPict{example-image-a}{0.3}
\lipsum[1]
\begin{equation}
\int_\gamma f(z)\,dz = 0.
\end{equation}
\end{thm}
\end{document}

答案1

这是一个小型页面解决方案。请参阅用多个类似定理的环境包装图像并显示数学拆分段落(换行)。

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}
        \usepackage{graphicx}
        \usepackage{caption}
        \input{insbox.tex}
        \usepackage{threeparttable}
        \usepackage{xargs}
        \usepackage{mwe}
        \usepackage{amsmath,amsthm,amssymb}


\newtheorem{thm}{Theorem}

\begin{document}

\noindent\begin{minipage}{\dimexpr 0.8\textwidth-\columnsep}% need some gap
\begin{thm}[Коши]\label{abc2}
Для всякой регулярной функции $f:G\to\mathbb{C}$, заданной в односвязной области G, справедливо равенство
\begin{equation}
\label{abc3}
\int_\gamma f(z)\,dz = 0.
\end{equation}
где интеграл берется по любому замкнутому простому кусочно-гладкому контуру $\gamma$, лежащему в области $G$.
\end{thm}
\end{minipage}\hfill\begin{minipage}{0.2\textwidth}
\includegraphics[width=\textwidth]{example-image-a}
\captionof{figure}{}
\end{minipage}

\end{document}

演示

相关内容