当我在文本中添加一个图形时floatfigure
,我无法让它贴在文本主体的顶部边缘。总是会留下一些空白。我甚至试图查看包代码,但没有找到任何线索来了解它来自哪里。我该如何把它剪掉?
梅威瑟:
\documentclass[fontsize=11pt,russian,open=any]{scrbook}
\usepackage{cmap}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}
\usepackage{fancyhdr}
\usepackage[paperwidth=14.8cm, paperheight=21.0cm, top=1.1cm, bottom=1.8cm, twoside, inner=0.9cm, outer=1.8cm, bindingoffset=0.5cm, footskip=1cm, headsep=0cm, headheight=0cm, voffset=0cm, hoffset=0cm, marginparsep=0cm, marginparwidth=0cm]{geometry}
\usepackage[demo]{graphicx}
\usepackage{color}
\usepackage{microtype}
\usepackage{adjustbox}
\usepackage[leadingfraction=1.0]{savetrees}
\usepackage{showframe}
\usepackage{floatflt}
\renewcommand{\baselinestretch}{0.95}
\setlength{\intextsep}{0pt}
\setlength{\textfloatsep}{0pt}
\setlength{\parindent}{1.25em}
\raggedbottom
\begin{document}
\begin{floatingfigure}[l]{0.45\linewidth}
\includegraphics[height=15\baselineskip, width=0.4\linewidth]{dummy}
\vspace{\baselineskip}
\end{floatingfigure}
--- Нет-нет! Одну! И левретку! Или болонку. Или мопса... Или вообще...
--- Мопса!!!~--- Серафима умудрилась вложить в название этой породы всю силу своего негодования и презрения.~--- Мопса!!!.. Черепашку ещё предложи!!! На верёвочке!!!
Царевич поёжился, ибо именно черепашка и не успела сорваться с его языка.
--- А п-почему~--- <<на верёвочке>>?
--- Чтоб не убежала!!!.. Послушай, Иванушка. Почему мы не можем съездить в гости к Ярославне? Или в Вондерланд? Или просто на недельку поохотиться в лес?
--- Но десять дней назад мы же выезжали на охоту!~--- ухватился Иван за безопасную тему.
--- Выезжали!~--- снова упёрла руки в бока и стала похожа на маленькую, разгневанную букву <<Ф>> Серафима.~--- Если не принимать во внимание, что охотились \emph{вы}, а мне с \emph{боярышнями\/} пришлось всё это время просидеть в шатре на платочках, чтобы не обгореть на палящем сентябрьском солнце и не запачкать платье об траву, то конечно, выезжали!
\end{document}
因为我总是需要在图表周围包裹多个段落,所以这个包提供了唯一可行的解决方案。如果有其他方法 - 我会很乐意测试它们。
答案1
找到这个间距有两个问题。floatflt
包将图形放在当前行上,但提高了0.3\baselineskip
。因此,最初您需要做的就是\vspace{-0.7\baselineskip}
在浮动的开头添加一个,使其提高一个完整的基线跳跃。但是,在顶部这太多了,因为第一行的底部基本上是\topskip
从文本区域的顶部开始的,所以我们需要将框向下推0.3\baselineskip
和向上推\topskip
:
\documentclass[fontsize=11pt,open=any]{scrbook}
\usepackage[demo]{graphicx}
\usepackage{showframe}
\usepackage{floatflt}
\setlength{\figgutter}{0pt}
\raggedbottom
\usepackage{lipsum} %For dummy text
\begin{document}
\begin{floatingfigure}[l]{0.4\linewidth}%
\vspace{\dimexpr0.3\baselineskip-\topskip}%
\noindent
\includegraphics[height=15\baselineskip,width=0.4\linewidth]{dummy}%
\end{floatingfigure}
\lipsum[1-5]
\end{document}
我已经从您的代码中删除了不相关的包。此外,\intextsep
和\textfloatsep
在中不起作用floatflt
。另一方面,\floatgutter
指定浮动和文本之间的水平空间。在您的例子中,在您计算之前有一个段落缩进,我用取消了它\noindent
。