Почему \vspace можно, после заголовка раздела, иногда кнопки прыжка в дискретные шаги?
Ну, это один вопрос, что я'ве было в течение длительного времени, и тот, который всегда заставляет меня крайне раздражала. Однако, на этот раз я'м даже несколько радует - что я могу ask в at вопрос all; и именно благодаря силе анимированные .гиф :)
Это вещь - иногда бывают некоторые конструкции Я'd, как, чтобы реплицировать в LaTeX; как правило, Вы читаете инструкции, вы измените свое длины, бывает. Впрочем, иногда - и особенно после того, как заголовки разделов - я'd, как сказать, поднимите или опустите отправной пункт после раздел немного; однако, без пересмотра мастер-секции после пропуска.
А так я обычно вставить \vspace можно{\длина}
после заголовка раздела, а начать тюнинг \длина
; текст начинает двигаться, а затем, если я переместить его на, скажем, 1 ст, он чуть не прыгает в этом направлении; я сократить до 0,5 пт - текст, как будто не двигался вообще ?! (и тогда я начну искать \vspace можно*
или \ \\[длина\]
, или что works). И я всегда хотел спросить об этом - но я не могу придумать ничего лучше, чем "по-Why ли латекс прыжок вертикальный space", и, возможно, никто не понимает, что происходит :)
. Ну, и наконец, это то, что я имею в виду, что "прыжки" или "щелкать" и в "дискретные шаги и" (atest_animate_10_p.gif, 900КБ):
В МВт на изображение ниже (составлена с pdflatex
) - однако, это баш-скрипт, который генерирует 100 PDF-файлы, а затем извлекает изображения из них, и, наконец, сочиняет изображений в анимированный GIF. В принципе, для каждого "рама" по (PDF-файл), скрипт меняет параметр, который заканчивается как длина, упаси\
, который используется только в одном месте: \ \\[\упаси]
. упаси \
увеличивается с постоянным шагом (меньше кегль) для каждого кадра; и записывается в качестве первого слова в абзаце.
Обратите внимание, что вместо плавного перехода, в пункте "не встанет" и на место и doesn'т двигаться на определенные ценности - и тогда, когда он начинает двигаться снова, ее "прыгает" больше, чем обычно. И это на самом деле и в каком размере (Note, что вы можете иметь некоторые затруднения в браузере, а гиф нагрузки; как только он загружается, однако в одежде должна быть заметна, когда этого пункта не'т двигаться - и число индикация изменения, тем не менее... хотя, некоторые кадры из GIF может еще оказаться dropped)
Ну, когда я пришел к этой проблеме, я получаю разочарование трудность объяснить это на словах. А потом думаю, ладно - пусть мне приготовьте МВт, будет легче для других. Тогда я пишу что-то минимальное, кинь\lipsum1 там - и я больше не могу продемонстрировать проблему !! Черт, всегда со мной! Именно поэтому, первым .GIF (и в МВт) имеет значение \lipsum[1-10]
- чтобы продемонстрировать проблему; однако это то, что произойдет, если, скажем, \lipsum[1-2]
вместо (atest_animate_02_p.gif, 899KB):
То есть - все идет гладко, как ожидалось (also построен с pdflatex`). Я обнаружил более-менее случайно, что вы не можете продемонстрировать это на "нервозности" и если вы не используете достаточно текста в пунктах, поэтому она перетекает на следующую страницу!
&ампер;усилитель; nbsp;
Наконец-то, я думала, для удовольствия, для создания такой анимированный GIF, но с lualatexи
Луа-визуально-отладка` - и это, безусловно, объясняет что-то больше (atest_animate_10_l.gif, 1599KB):
А именно, здесь заметно, что когда абзацы на "Замок" и в вертикальном положении - один из тех голубых линий начинает идти на "Вверх", и потом ее "прыгает" ПО -; что это значит, однако, выходит за меня :)
Так что, если кто-нибудь может объяснить, что происходит здесь - и есть возможность, что "ровная" и вертикальное позиционирование пролетаемых пунктов, пожалуйста, напишите снова...
Заранее огромное спасибо за любые ответы, Ура!
Вот код скрипта МВт (atextest.sh):
#!/bin/bash
# to force exit loop:
trap 'echo Control-C trap caught; cleanup; exit 1' 2 #traps Ctrl-C (signal 2)
MYFN="atest"
MYFNIMG="${MYFN}_img"
MYFNTEX=${MYFN}.tex
MYFNIN="${MYFN}-input"
MYFNINTEX=${MYFNIN}.tex
function cleanup() {
echo rm ${MYFNTEX} ${MYFNINTEX} -rf ${MYFN} -rf ${MYFNIMG}
rm ${MYFNTEX} ${MYFNINTEX}
rm -rf ${MYFN}
rm -rf ${MYFNIMG}
}
mkdir ${MYFN}
mkdir ${MYFNIMG}
cat > ${MYFNTEX} <<EOF
\documentclass[10pt,a4paper]{article}
\providecommand{\myparam}{0.0pt}% fallback definition
\tracingonline=0 % suppress stdout (still dumps start)
% tex.se: 47576
\usepackage{ifxetex,ifluatex}
\newif\ifxetexorluatex
\ifxetex
\xetexorluatextrue
\else
\ifluatex
\xetexorluatextrue
\else
\xetexorluatexfalse
\fi
\fi
\ifluatex
\usepackage{lua-visual-debug} % tlmgr install lua-visual-debug
\fi
\ifxetexorluatex
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX}
\setmainfont[Scale=1.0]{Junicode}
\newfontfamily\myfontfam[Scale=1.0]{Junicode}
\fi
\usepackage[a4paper]{geometry}
\geometry{twoside,inner=2.5cm,outer=3.5cm,top=2.5cm,bottom=2.5cm}
\makeatletter
\renewcommand{\section}{\@startsection
{section}% % the name
{1}% % the level
{\z@}% % the indent / 0mm
{-\baselineskip}% % the before skip / -3.5ex \@plus -1ex \@minus -.2ex
{2pt}% % the after skip / 2.3ex \@plus .2ex
{\centering\fontsize{11}{12}\selectfont\bfseries}} % the style
\makeatother
\usepackage{lipsum}
\newlength{\mylen}
\setlength{\mylen}{0pt}
\setlength{\mylen}{\myparam}
\begin{document}
\ifxetexorluatex
\myfontfam
\fi
\fontsize{10}{12.3}\selectfont
\title{Testing Title}
\date{October 31, 1000}
\author{John Doe\\\\ Somewhereland}
\maketitle
\clearpage
\input{${MYFNINTEX}}
\clearpage
\end{document}
EOF
cat > ${MYFNINTEX} <<EOF
\section*{Introductory words of introduction}
\vspace{\baselineskip}
\vspace{2pt}
\begin{center}
\textbf{Something else here, some other words}
\end{center}
%\vspace{\mylen}
\ \\\\[\mylen]
\makebox[2cm][r]{\the\mylen}, \lipsum[1-10] %[1-2]
\bigskip
\bigskip
EOF
MYPARAM="2.0pt"
JOBNAME="atest1"
#~ CROPPARAMS=320x240+100+400
CROPPARAMS=400x400+150+100
CMDNAME="pdflatex"
#~ CMDNAME="xelatex"
#~ CMDNAME="lualatex"
for ix in $(seq 0 1 100); do
iy=$(wcalc -EE -q \($ix-50\)/50*30);
INDEX=$(printf "%03d" $ix) ;
JOBNAME="${MYFN}${INDEX}" ;
MYPARAM="${iy}pt"
echo "
$CMDNAME - $JOBNAME - $MYPARAM" ;
(${CMDNAME} -output-directory="${MYFN}" -jobname="${JOBNAME}" "\def\myparam{${MYPARAM}}\tracingonline=0\input{${MYFNTEX}}" 2>&1 1>/dev/null);
convert -density 150 -crop ${CROPPARAMS} +repage ${MYFN}/${JOBNAME}.pdf[1] ${MYFNIMG}/${JOBNAME}.png ;
done
GRAY=""
#~ GRAY="-type grayscale"
echo convert -delay 5 -loop 0 ${MYFNIMG}/\*.png ${GRAY} ${MYFN}_animate.gif
convert -delay 5 -loop 0 ${MYFNIMG}/*.png ${GRAY} ${MYFN}_animate.gif
# view results
#~ evince ${MYFN}/${JOBNAME}.pdf
#~ display ${MYFNIMG}/${JOBNAME}.png
eog atest_animate.gif 2>/dev/null
cleanup # remove tmp files
Стефан заметил это замечательный вопрос, чтобы смотреть на, но я думаю, что все анимации и кодирования вокруг него у вас довольно эффективно скрытые проблемы.
Виновником является "Центр" среды только в передней части пространства, которые можно изменить. Проблема в том, что эта среда окружает себя гибкий клей (т. е. с растягиваться и сжиматься компонент). Точные значения в вашем случае
Так что в том месте, где у вас есть место, вы действительно
Как отмечалось в других ответах Текс пытается найти разрыв страницы с минимальной вредности. Так, если предположить, что разрыв страницы Текс нашли только естественно вписывается (т. е. не садится и не растягивается необходимо), то вы просто получаете
\mylength + 10 пт на данный момент. Теперь если вы добавляете 1пт к
\mylength` то последняя строчка Не'т подходят больше на странице, за исключением того, что дополнительный балл может быть поглощен сократится на странице.Теперь если только уменьшится доступна в этом месте (которое в вашем примере), то дополнительное очко будет просто проглотить, а пространство остается прежним. Та же история для добавления еще одной ПТ и еще один. (Если есть несколько мест, с сокращением на странице психиатр получает распределенных вечером по тем местам, так что в этом случаи вы могли бы увидеть небольшой рост, но меньше, чем значение шага.)
Но в тот момент добавления 4ПТ он может'т быть компенсированы за счет сокращения имеющихся в вашем примере. Таким образом, последняя строка теперь действительно не'т подходят больше на странице и, таким образом, Текс должен вставлять "стрейч", чтобы заполнить недостающие линии (минус 4ПТ), т. е. 8рт или так в зависимости от `\baselineskip установки.
Так что нет больше сжиматься, и вместо большой натяжкой и своего пространства делает прыжок. Добавление дополнительных очков увеличат ваше пространство, а необходимость для натяжных становится все меньше, пока вы не достигнете точки, где страницы еще есть "природных" без необходимости растянуть, а затем все повторяется.
Сейчас настройка\raggedbottom только влияет на то, как последняя страница верстается (разбив его). В основном, отсечения страницы в бот
\свойств textheight
а в случае\raggedbottom " а " vfill \
добавляется в конец (более или менее). Сейчас в "сокращения" по ситуации это не't действительно имеет большое значение, поскольку страница уже переполнен. И в ситуации растянуть это означает, что участок в конце наносится только на дно и не растягивается части в середине страницы.Так в резюме: чтобы избежать вашей тайны вы должны убедиться, что пространство вы пытаетесь отрегулировать не садится и не растягивается компонент как часть перестройки или как часть пространства рядом с ним. Только тогда можно гарантировать, что пространство на самом деле ведет себя так, как вы ожидаете
Латекс по умолчанию вертикальное выравнивание содержимого страницы, чтобы распространить на всю страницу, сверху донизу, за исключением перед ручной разрыв страницы (например, новую главу или использование `\newpage или\clearpage или в конце документа.
Чтобы достичь этого, каждый вертикальное пространство на странице, телевизором с некоторой натяжкой. Даже базовой не стрейч, поэтому этот пункт линии не должны быть на одинаковом расстоянии. В вашем случае, похоже, что латекс используется (отрицательный) стрейч в символ новой строки
\\
, которые используются для производства космической. Попробуйте использовать\совместной работе vspace*{10.0 пт}
вместо этого.Это вообще не хорошая идея, чтобы удалить тянется от формата-определение длины, потому что если вы не имели вертикальный стрейч на странице вообще (т. е. ни в пункте, ни в линии, ни в интервал тянется), эта страница станет на "короткие" Ну, латекс не смогли бы заполнить всю страницу и предупреждение: Underfull \VBOX В а \выход находится в активном отображались в лог-файл. Страницы не будут иметь одинаковую высоту, и это делает ваш документ будет выглядеть некрасиво.
Изображения форматов GIF и баш скрипт кунг-фу еще больше, однако это поучительно, чтобы смотреть как на верхней, так и нижней части страницы. Вот изображение немного другой страницы, во-первых, без каких-либо `\vspace можно добавил.
![введите сюда описание изображения][1]
Обратите внимание на текст начинается на линии 4 и заканчивается словом 'дар'.
Следующие два набора изображений
\vspace можно*
на16 пунктов " и " 18пт
.Набор
\совместной работе vspace*{16 пунктов}
![Введите описание изображения здесь][2]
Набор в
\vspace можно{18пт}
![Введите описание изображения здесь][3]
Прыжки вы испытываете (особенно если вы используете `vspace можно, а не снялся версии, Текс'ы, попытки всегда приносят страницей с минимумом badness.
Это старая проблема и в первой опубликованной работе на типографии (1683) Иосиф Моксон, Mechanick упражнения: или, Учение о полезных работ в случае типографского искусства, ссылка на добавление пробелов до баланса текст так, что последняя строка всегда падает на том же месте и даже страницы.
Лучшее место, чтобы начать понимать связанные с этим вопросы, Михаил Пласс, кандидат наук, [оптимальных методов разбиения для систем автоматического верстка][4].
Код МВт для изображений следует, Будет неплохо, если вы могли бы объединить его с вашей гифки. Следует отметить и соблюдать Текс'ы попытки всегда заканчиваются хорошо отобразить страницу.
Редактировать: ОК, согласно [@tohecz][3]' нить, это было'Т просто об использовании помеченные
\vspace можно*
; согласно [@YiannisLazarides][4] резьба, избегаявсегда\begin{центр}
помогает - который также объясняется в [@FrankMittelbach][5]'ы сообщение. Так, в ОП-код LaTeX, показанной странице:Я заменил, что с (atextestb-ш-жек.дифф):
... И я могу подтвердить, что: избавление от "центра" Среда, и заменив его на
{}
группа с\центрирование
, будет теперь вызывать на "ровная" и вертикальное пространство перехода из-за\vspace можно
в начале абзаца; показано в atest_animate_l_tb_woc.gif (я думаю, мне лучше прекратить писать анимационные картинки рядный, четыре тяжелых, вероятно, достаточно для этой страницы:)
_). К сожалению,\центрирования часть не работает с этим изменением (название это'т по центру); но, по крайней мере, наконец-то "виновника" и по вертикали, нервозности, определены и подтверждены. и GT; редактировать: Ок, я могу подтвердить, что центрирование отдельного текста будет восстановлена, если я обернуть
\центрированиестрофы в команду
\makebox, как в: <до> { % начать группу \makebox[\текстовое][с]{ \центрирования\textbf{здесь что-то другое, какие-то другие слова} } } % конец группы </пред>