LINUX.ORG.RU

Как сдвигать объекты вверх страницы?

 


0

1

Нужно, чтобы в случаях, когда на странице расположены только таблицы или рисунки (плавающие), они располагались не равномерно по странице, а (из-за ебучего ГОСТа) стягивались вверх, как показано на

https://dropmefiles.com/5aTjb

можно ли так сделать какой-то одной командой?

команды типа \newline и \vspace{} не помогают, так как иллюстрации плавающие

На то они и плавающие иллюстрации. Я вижу два варианта: либо изменить поведение стандартного вывода плавающих объектов (но там кода достаточно прилично по объему, хоть он в принципе легко читаем), либо вручную управлять их размещением.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Deleted

у меня в качестве примера приходится 5-7 разных графиков, а текста не так много, поэтому почти все графики не рисуются в тексте, а уплывают в конец раздела

PasaOpasen
() автор топика

Вариант 1: не использовать окружения для плавающих объектов.

Вариант 2: добавить после плавающих фигур \vfill. Этот вариант заведомо плохой, может и не сработать, а может и навредить.

aquadon ★★★★★
()
Последнее исправление: aquadon (всего исправлений: 1)
Ответ на: комментарий от Eddy_Em

А не, сорян: у меня там вручную размещение объектов уже.

Автомат был в самом первом релизе, но я уже и не найду, как там умудрялся подбивать плавающие картинки...

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от aquadon

Как обыграть вариант 1, если у меня два рисунка объявляются так?

\begin{figure}[tbh]
  \noindent\centering{
    \includegraphics[width=0.6\linewidth]{Runge1.pdf}
  }
  \caption{Неустойчивость интерполяции для $f(x)=\dfrac{1}{1+x^2}$ на $[-9,5]$}
  \label{runge1}
\end{figure}
\newline
\begin{figure}[!h]
  \noindent\centering{
    \includegraphics[width=0.6\linewidth]{Runge2.pdf}
  }
  \caption{Неустойчивость интерполяции для $f(x)=\sqrt{|x|}$ на $[-5,10]$}
  \label{runge2}
\end{figure}

PasaOpasen
() автор топика
Ответ на: комментарий от PasaOpasen

а текста не так много

Так может всё-таки текст сделать «плавающим». Есть такие шаблоны. Вспомнить бы только, как они называются. Minipage, члоле.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от PasaOpasen

Вот с этим я не уверен. Про \captionof писал по памяти. Поищи примеры с его использованием.

aquadon ★★★★★
()
Ответ на: комментарий от Deleted

это не совсем то, так как по смыслу идёт текст с теорией и кратким описанием графиков, а потом уже графики

PasaOpasen
() автор топика

Может помочь все рисунки делать делать через окружение figure[!h], а потом распределяться их по страницами при помощи \pagebreak и/или \newpage.

DarthVadimius ★★★★
()
Последнее исправление: DarthVadimius (всего исправлений: 1)
Ответ на: комментарий от aquadon

пробовал, не получается. эти буквы работают только для картинок в тексте. если же на странице только объекты, то они автоматом ставятся равномерно по странице

PasaOpasen
() автор топика
Ответ на: комментарий от DarthVadimius

в первый раз эта команда добавляет пустую страницу, во второй раз тоже какую-то дичь делает

PasaOpasen
() автор топика
Ответ на: комментарий от Eddy_Em

Первый же ответ: просто в \afterpage впихнуть команду \clearpage. Можно и на более низком уровне это сделать, но так проще всего.

В этом случае все накопленные флоаты будут выброшены на следующей странице. Если это делать регулярно, перекопов не будет.

Ну и головой думай: зачем подряд пихать уйму флоатов, не разбавляя их текстом?

А если твои флоаты такие здоровые, что кроме двух картинок текст на страницу не влезает (т.к. места лишь для двух строчек остается), то можно сделать их чуточку повыше или, наоборот, пониже.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

тут проблема в том, что от лишних изображений не избавиться, но нужно их по странице неестественным образом распределить

PasaOpasen
() автор топика
Ответ на: комментарий от PasaOpasen

Если у тебя их очень много, можно периодически толпу вываливать, перестраивая латех на «рваный низ» - тогда не будет равномерного распределения по высоте, изображения будут поджаты к верхней границе. После того, как флоаты будут размещены, возвращаешь поведение к нормальному.

Ну или вообще вручную их размещай, коль уж их больше, чем текста!

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от aquadon

https://dropmefiles.com/N4xmL рисунок 1 должен быть вверху страницы, а не посередине. остальные рисунки должны быть просто разделены одной пустой строкой, начинаться сверху, а не быть вверху и внизу

PasaOpasen
() автор топика
Ответ на: комментарий от Eddy_Em

вручную и приходится, но иногда это очень трудно, и в каждом случае результаты будут немного отличаться, что тоже нехорошо

PasaOpasen
() автор топика
Ответ на: комментарий от PasaOpasen

диплом у меня

Да это комикс какой то, а не диплом. У меня картинки только на плакатах были + на слайдах, а в «стопке» сплошной текст.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от PasaOpasen

Безо всяких плавающих окружений

\usepackage{caption}

\includegraphics[width=\linewidth]{hcirc.pdf}
\captionof{figure}{очность и отношение точность-время от интегрирования для верхнего полукруга радиуса $r=2$}
\label{fig:1}
aquadon ★★★★★
()
Последнее исправление: aquadon (всего исправлений: 1)
Ответ на: комментарий от Deleted

у каждого своё, у меня просто есть где-то 10-15 страниц из 70, на которых только картинки или таблицы, потому что такие обстоятельства

PasaOpasen
() автор топика
Ответ на: комментарий от PasaOpasen

Делай проще: впихни их в самый конец текста приложением, предварительно сказав \raggedbottom. Вот и все. И пусть комиссия развлекается...

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от PasaOpasen

у каждого своё

Не, парень, от судьбы не уйдёшь. Чем больше картинок будет в «стопке», тем больше гнилых вопросов ты получишь. Вынеси их лучше все в отдельную брошюру (приложение), по которой и будешь тараторить, а «стопку» наполни тоскливо-скушной копипастой.

Deleted
()
Ответ на: комментарий от Deleted

на вопросы я отвечу, и диплом нормальный. Проблема в том, что я за день до защиты узнаю от контролёрши, которая две недели не появлялась, что к рисункам есть новые требования, которые в адекватный latex не так легко засунуть

PasaOpasen
() автор топика
Ответ на: комментарий от PasaOpasen

или что-то такое

С такими вопросами тебе не помогут. Сообщение об ошибке приведи. Я думаю, что ты не подключил пакет caption.

aquadon ★★★★★
()
Ответ на: комментарий от aquadon

для отдельной картинки это сработало, а как мне без окружения объединить две картинки в одно целое, как тут

          \begin{figure}[h] 
            \center{\begin{minipage}[h]{\linewidth} 
            \center{\includegraphics[width=0.6\linewidth]{d13.pdf} \\ для плотности} 
            \end{minipage}} 
            \vfill 
            \center{\begin{minipage}[h]{\linewidth} 
            \center{\includegraphics[width=0.6\linewidth]{v13.pdf} \\ для потенциаf} 
            \end{minipage}} 
            \caption{Один из результатов работы алгоритма} 
            \label{p3} 
            \end{figure}

Если окружение убрать, подкартинка может и на другую страницу уйти, чего нельзя допускать

PasaOpasen
() автор топика
Ответ на: комментарий от PasaOpasen

Через окружение subfigure. Пример легко гуглится.

aquadon ★★★★★
()

Можно, например, так:

\documentclass{article}
\usepackage[showframe]{geometry}
\usepackage{tabularx}
\makeatletter
\setlength{\@fptop}{0pt}
\setlength{\@fpsep}{8pt}
\setlength{\@fpbot}{0pt plus 1fil}
\makeatother
\begin{document}
\begin{table}[p]
  \caption{A table}
  \begin{tabularx}{\textwidth}{|X|}
    \hline Some text\\ \hline Some text\\ \hline
  \end{tabularx}
\end{table}
\begin{table}[p]
  \caption{A table}
  \begin{tabularx}{\textwidth}{|X|}
    \hline Some text\\ \hline Some text\\ \hline
  \end{tabularx}
\end{table}
\end{document}

TeopeTuK ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.