В LaTeX не удается добавить пространство (т. е. Использовать vspace{длина}) в многоколоночном (т. Е. в среде begin{multicols})

#latex #miktex #latex-environment #texstudio

Вопрос:

Я пытаюсь добавить вертикальное пространство в первый столбец, но после записи vspace{10 см} все еще не получаю требуемого результата. Изображение требуемого результата можно найти здесь. Если в коде есть какая-то проблема (код прилагается), пожалуйста, исправьте ее. В противном случае вы также можете предложить другой метод.

 documentclass{article}
    usepackage{multicol}
    usepackage{tikz}
    begin{document}
        begin{multicols}{2}
            vspace{10cm}
            begin{flushleft}
                Date:
                \ Place
            end{flushleft}
            
            columnbreak
            Examiners   \
            begin{flushright}
                
                par
                1.begin{tikzpicture}
                    draw [thick,densely dashed={dash pattern=on 3pt off 2pt}] (0,0) -- (7,0);
                end{tikzpicture}
                par
                2.begin{tikzpicture}
                    draw [thick,densely dashed={dash pattern=on 3pt off 2pt}] (0,0) -- (7,0);
                end{tikzpicture}
            end{flushright}
        end{multicols}
    end{document}
 

Ответ №1:

Это сработает, если vspace это не первое, что находится в столбце. Вы могли бы добавить что-то невидимое, как mbox{} до этого.

Не по теме:

  • использование tikz для обожаемых строк кажется немного излишним, вы могли бы использовать dotfill вместо этого (это также позволит избежать предупреждений о переполнении коробки).
  • вы не должны злоупотреблять \ разрывами строк, это вызывает много предупреждений о неполном заполнении полей. Просто оставьте пустую строку вместо этого, чтобы начать новый абзац
 documentclass{article}
usepackage{multicol}

begin{document}
    begin{multicols}{2}
        mbox{}
        vspace{10cm}
        begin{flushleft}
            Date:
            
            Place
        end{flushleft}
        
        columnbreak
        
        Examiners   
        
        begin{flushright}
            par
            1.dotfill
            par
            2.dotfill
        end{flushright}
    end{multicols}
end{document}
 

Комментарии:

1. Это будет нормально для пунктирной линии, но есть ли какой-либо способ получить гибкую пунктирную линию, а не пунктирную линию ?

2. @VinayFaria Взгляните на dashrule посылку. Если вам нужен tikz также для других целей в вашем документе, его использование не будет каким-либо недостатком, но если нет, это значительно замедлит компиляцию, поэтому альтернативы могут быть проще