Longtable 내부의 텍스트 항목이 수직으로 정렬되지 않습니다.

Longtable 내부의 텍스트 항목이 수직으로 정렬되지 않습니다.

내 질문은 이것과 비슷할 수 있습니다테이블 셀 내부의 항목 목록이 제대로 정렬되지 않았습니다., 그러나 내 경우에는 솔루션이 적합하지 않았습니다.

이 코드를 사용하면:

\documentclass[a4paper, 11pt]{article} 
\usepackage[margin=2cm]{geometry} % changes the margin
\usepackage{enumitem}
\usepackage{amssymb}
\usepackage{titlesec}
\usepackage{indentfirst}
\usepackage{longtable}
\usepackage{blindtext}


%% Create a very compact enumerated list environment
\newlist{myenum}{enumerate}{1}
\setlist[myenum]{label=\arabic*., nosep, wide, 
             leftmargin=*, % hanging indentation
             before=\vspace{-0.57\baselineskip},
             after =\vspace{-0.8\baselineskip}} % reducing vertical   space
%---------------------Need to Simplify This-----------------------------%
\newlist{myenum2}{enumerate}{1}
\setlist[myenum2]{label=\alph*), nosep, wide, 
             leftmargin=*, % hanging indentation
             before=\vspace{-0.57\baselineskip},
             after =\vspace{-0.8\baselineskip}} % reducing vertical space
\newlist{myenum3}{enumerate}{1}
\setlist[myenum3]{label=\arabic*), nosep, wide, 
             leftmargin=*, % hanging indentation
             before=\vspace{-0.57\baselineskip},
             after =\vspace{-0.8\baselineskip}} % reducing vertical space
\newlist{myenum4}{enumerate}{1}
\setlist[myenum4]{label=\arabic*., nosep, wide, 
             leftmargin=*, % hanging indentation
             before=\vspace{-0.57\baselineskip},
             after =\vspace{-0.8\baselineskip},
             start=2} % reducing vertical space
\newlist{myenum5}{enumerate}{1}
\setlist[myenum5]{label=\arabic*., nosep, wide, 
             leftmargin=*, % hanging indentation
             before=\vspace{-0.57\baselineskip},
             after =\vspace{-0.8\baselineskip},
             start=3} % reducing vertical space
\newlist{myenum6}{enumerate}{1}
\setlist[myenum6]{label=\arabic*., nosep, wide, 
             leftmargin=*, % hanging indentation
             before=\vspace{-0.57\baselineskip},
             after =\vspace{-0.8\baselineskip},
             start=4} % reducing vertical space
\newlist{myenum7}{enumerate}{1}
\setlist[myenum7]{label=\arabic*., nosep, wide, 
             leftmargin=*, % hanging indentation
             before=\vspace{-0.57\baselineskip},
             after =\vspace{-0.8\baselineskip},
             start=5} % reducing vertical space               

\renewcommand\thesection{\Alph{section}.}
\renewcommand\thesubsection{\arabic{subsection}.}
%% Re-format the font size of "the section"
% {11} is the desired font size
% {15} is the vertical spacing, perhaps refers to 1.5 lines?
% \selectfont is for un-bold the sub-section
\titleformat{\section}
{\normalfont\fontsize{11}{.5em}\bfseries}{\thesection}{.5em}
    {}
\titleformat{\subsection}
{\normalfont\fontsize{11}{.5em}\selectfont}{\thesubsection}{.5em}
    {}
\titlespacing % starred version: first paragraph is not indented
{\subsection} % <command>
{0em} % <left>
{.4em} % <before-sep>
{.3em} % <after-sep>

\setlength\parindent{1cm} 

% Avoid hypenation (breaking sentences in paragraph)
\tolerance=1
\emergencystretch=\maxdimen
\hyphenpenalty=10000
\hbadness=10000

\begin{document}
%------------------------------Section D---------------------------------------------%
\section{Some Text Here}
\begin{longtable}{@{}p{0.3\textwidth}cp{0.65\textwidth}}
%% Subsection 1
\begin{myenum} \item Some Text Here \end{myenum} & : & \blindtext \\
%% Subsection 2
\begin{myenum4} \item Some Text Here \end{myenum4} & : & \blindtext \\
%% Subsection 3
\begin{myenum5} \item Some Text Here \end{myenum5} & : & \begin{myenum3}
\item Some Text Here;
\item Some Text Here;
\item Some Text Here;
\item Some Text Here;
\item Some Text Here;
\item Some Text Here.
\end{myenum3}\\
%% Subsection 4
\begin{myenum6} \item Some Text Here \end{myenum6} & : &   \begin{myenum2} 
\item \blindtext; 
\item \blindtext;  
\end{myenum2}\\
%% Subsection 5
\begin{myenum7} \item{Some Text Here} \end{myenum7} & : & \blindtext.\\
\end{longtable}
\end{document}

이로 인해 다음과 같은 결과가 나왔습니다.[output1][ ][1]]1[ 출력2]2

내 질문은 다음과 같습니다

  1. \newlist 및 \setlist를 사용하면 첫 번째 열에 사용자 정의된 열거 목록을 만들 수 있지만 더 우아한 방법이 있습니까?answered
  2. 첫 번째 열의 번호 매기기 목록, 두 번째 열의 일부 텍스트, 세 번째 열의 기호, 네 번째 열의 번호 매기기 목록을 조합하여 여러 페이지에 걸쳐 있는 테이블을 생성하고 :수직으로 정렬하려면 어떻게 해야 합니까?
  3. 그리고 \section과 그 뒤의 텍스트 사이의 불필요한 수직 공간을 어떻게 줄일 수 있습니까?answered

어떤 도움이라도 대단히 감사하겠습니다.

답변1

사용자 정의 환경을 사용하는 유일한 이유가 enumerate첫 번째 열에 카운터를 자동으로 삽입하는 것이라면 다음과 같이 진행하는 것이 좋습니다. longtable와 환경 모두 카운터를 증가시키고 즉시 인쇄하도록 프로그래밍된 tabular열(유형)을 특징으로 합니다 .N

\label일반적인 - 메커니즘을 통해 특정 행을 쉽게 상호 참조할 수 있습니다 \ref.

여기에 이미지 설명을 입력하세요

\documentclass[a4paper, 11pt]{article}
\usepackage[margin=2cm]{geometry}
\usepackage{array,longtable,etoolbox,lipsum}
\setlength\extrarowheight{2pt} % for a more open "look" of tabular material
\newcolumntype{P}[1]{p{#1\textwidth}}

\newcounter{rownum}
\newcolumntype{N}{>{\refstepcounter{rownum}\therownum}l}
% Automate resetting of counter to 0 at the start of a tabular-like env.:
\AtBeginEnvironment{tabular}{\setcounter{rownum}{0}}
\AtBeginEnvironment{tabular*}{\setcounter{rownum}{0}}
\AtBeginEnvironment{tabularx}{\setcounter{rownum}{0}}
\AtBeginEnvironment{longtable}{\setcounter{rownum}{0}}

\begin{document}

\begingroup  % localize the following settings
\setlength\tabcolsep{0pt} % <--- important
\setlength\LTleft{0pt} \setlength\LTright{0pt}

\begin{longtable}{@{\extracolsep{\fill}} N P{0.32} P{0.63}} 
   % rel. column widths of the "P" columns should sum to no more than 0.95.
\hline
\endfirsthead
\hline
\endlastfoot

& Some text here      & \lipsum*[1] \\[1ex]
& Some more text here & \lipsum*[2] \\

\end{longtable}
\endgroup


\begin{center}
\begin{tabular}{@{} N lll @{}}
\hline
& a & b & c \\
& d & e & f \\
\label{row:last}& g & h & i \\
\hline
\end{tabular}
\end{center}

%% Create a cross-reference to the final row:
\noindent
A cross-reference to row \ref{row:last}.
\end{document}

관련 정보