Размер текста изменяется с помощью \par

Размер текста изменяется с помощью \par

Это своего рода продолжение постаПроблемы с межстрочным интервалом в ячейке таблицы.

Я хочу иметь разные стили шрифта в одной ячейке таблицы. Пока что я узнал, что локальное изменение размера {\small this is a small style\par}всегда должно завершаться на \par, чтобы межстрочный интервал ( \baselineskip) был хорошо скорректирован. Пока все хорошо. Это работает, как и ожидалось, каждый \parделает перенос строки и корректирует межстрочный интервал. Проблема в том, что последний \parв ячейке таблицы добавляет новую строку к тексту, что в данном случае нежелательно.

Мой вопрос заключается в том, существует ли другая команда latex, которая имеет тот же эффект, что и \parдля межстрочного интервала, но не добавляет новую строку? Или какой-то другой обходной путь был бы весьма признателен!

Вот небольшой пример (он во многом основан на коде из моего предыдущего поста):

\documentclass[11pt,paper=a4,11pt,parskip=half,draft]{scrartcl}

\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\usepackage{longtable}
\usepackage{tabularx}
\usepackage{ragged2e}
\usepackage{xcolor}
\usepackage{ifthen}

\usepackage{blindtext}

\definecolor{darkblue}{HTML}{212650}

% https://tex.stackexchange.com/a/218826/46403
\newcommand{\cvitemdate}[1]{\sffamily #1}
\newcommand{\cvitemhead}[1]{\sffamily\textcolor{darkblue}{\bfseries #1}}
\newcommand{\cvitemplace}[1]{\sffamily\itshape\footnotesize #1}
\newcommand{\cviteminfo}[1]{\scriptsize #1}

% formating info text
\newcommand{\cvitem}[5]{%
    % 1st column
    {\cvitemdate{#1}} &%
    % 2nd column - first textline
    {\cvitemhead{#2}\par}%
    % 2nd column - second textline
    \ifthenelse{\equal{#3}{}}{}{%
        {\cvitemplace{#3}\par}%
    }%
    \ifthenelse{\equal{#5}{}}{\vspace{6pt}}{\vspace{3pt}}%
    % 2nd column - third textline
    \ifthenelse{\equal{#4}{}}{}{%
        {\cviteminfo{#4}\par}%
    }%
    \ifthenelse{\equal{#5}{}}{}{\vspace{3pt}}%
    % 2nd column - fourth textline
    \ifdefined\isfull%
        \ifthenelse{\equal{#5}{}}{}{%
            {\cviteminfo{#5}\par}%
        }%
    \else\fi%
    %\vspace*{-\baselineskip}
    \tabularnewline%
}

% https://tex.stackexchange.com/a/7348/46403
% ragged2e packages provides text hyphenation in columns
\newcolumntype{L}[1]{>{\raggedright\hspace{0pt}\arraybackslash}p{#1}}   % left with dimension

\newcommand{\colwidth}[1]{%
    \dimexpr #1\textwidth-2\tabcolsep%
}%

\begin{document}

\begin{longtable}[!htbp]{|@{}L{\colwidth{0.2}}|L{\colwidth{0.8}}@{}|}

    \hline
    \cvitem{Itemdate 1}
           {Itemhead 1}
           {Itemplace 1}
           {\textbf{Iteminfo 1.1}: \blindtext[1]}
           {\textbf{Iteminfo 1.2}: \blindtext[1]}

    \hline
    \cvitem{Itemdate 2}
           {Itemhead 2}
           {Itemplace 2}
           {}
           {}

    \hline
    \cvitem{Itemdate 3}
           {Itemhead 3}
           {}
           {}
           {}
    \hline

\end{longtable}

\end{document}

Онлайн доступно по адресуhttps://www.overleaf.com/2032147yzdvhq#/5128620/

решение1

Хотите что-то подобное?

введите описание изображения здесь

Я заменил ваше определение на \cvitemэто:

\newcommand{\cvitem}[5]{%
    {\cvitemdate{#1}} &%
    {\cvitemhead{#2}\par}
    \ifthenelse{\equal{#3}{}}%
        {\vspace*{-\baselineskip}}%
        {{\cvitemplace{#3}\par}
          \ifthenelse{\equal{#4}{}}%
              {\vspace*{-\baselineskip}}%
              {{\vspace{6pt}\cviteminfo{#4}\par}
                \ifthenelse{\equal{#5}{}}%
                    {}%
                    {\ifdefined\isfull\vspace{3pt}{\cviteminfo{#5}\par}\fi%
                    }%
                \vspace*{-\baselineskip}%
              }%
        }%
    \vspace*{-\baselineskip}%
    \tabularnewline%
}

Полная МВЭ:

\documentclass[11pt,paper=a4,11pt,parskip=half,draft]{scrartcl}

\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\usepackage{longtable}
\usepackage{tabularx}
\usepackage{ragged2e}
\usepackage{xcolor}
\usepackage{ifthen}

\usepackage{blindtext}

\definecolor{darkblue}{HTML}{212650}

\newcommand\isfull

% http://tex.stackexchange.com/a/218826/46403
\newcommand{\cvitemdate}[1]{\sffamily #1}
\newcommand{\cvitemhead}[1]{\sffamily\textcolor{darkblue}{\bfseries #1}}
\newcommand{\cvitemplace}[1]{\sffamily\itshape\footnotesize #1}
\newcommand{\cviteminfo}[1]{\scriptsize #1}

% formatting info text
\newcommand{\cvitem}[5]{%
    {\cvitemdate{#1}} &%
    {\cvitemhead{#2}\par}
    \ifthenelse{\equal{#3}{}}%
        {\vspace*{-\baselineskip}}%
        {{\cvitemplace{#3}\par}
          \ifthenelse{\equal{#4}{}}%
              {\vspace*{-\baselineskip}}%
              {{\vspace{6pt}\cviteminfo{#4}\par}
                \ifthenelse{\equal{#5}{}}%
                    {}%
                    {\ifdefined\isfull\vspace{3pt}{\cviteminfo{#5}\par}\fi%
                    }%
                \vspace*{-\baselineskip}%
              }%
        }%
    \vspace*{-\baselineskip}%
    \tabularnewline%
}

% http://tex.stackexchange.com/a/7348/46403
% ragged2e packages provides text hyphenation in columns
\newcolumntype{L}[1]{>{\raggedright\hspace{0pt}\arraybackslash}p{#1}}   % left with dimension

\newcommand{\colwidth}[1]{%
    \dimexpr #1\textwidth-2\tabcolsep%
}%

\begin{document}

\begin{longtable}[!htbp]{|@{}L{\colwidth{0.2}}|L{\colwidth{0.8}}@{}|}

    \hline
    \cvitem{Itemdate 1}
           {Itemhead 1}
           {Itemplace 1}
           {\textbf{Iteminfo 1.1}: \blindtext[1]}
           {\textbf{Iteminfo 1.2}: \blindtext[1]}

    \hline
    \cvitem{Itemdate 2}
           {Itemhead 2}
           {Itemplace 2}
           {\textbf{Iteminfo 2.1}: \blindtext[1]}
           {}

    \hline
    \cvitem{Itemdate 3}
           {Itemhead 3}
           {Itemplace 3}
           {}
           {}

    \hline
    \cvitem{Itemdate 4}
           {Itemhead 4}
           {}
           {}
           {}
    \hline

\end{longtable}

\end{document} 

РЕДАКТИРОВАТЬ

Если какой-либо аргумент между 3-м, 4-м и 5-м может быть пустым, замените приведенный выше код на:

\newcommand{\cvitem}[5]{%
    {\cvitemdate{#1}} &%
    {\cvitemhead{#2}\par}
    \ifthenelse{\equal{#3}{}}
        {}
        {{\cvitemplace{#3}\par}}%
    \ifthenelse{\equal{#4}{}}
        {}
        {{\vspace{6pt}\cviteminfo{#4}\par}}%
    \ifthenelse{\equal{#5}{}}%
        {}%
        {\ifdefined\isfull\vspace{3pt}{\cviteminfo{#5}\par}\fi}%
    \vspace*{-\baselineskip}%
    \vspace*{-\baselineskip}%
    \tabularnewline%
}

Связанный контент