各种餐桌布置和选项

各种餐桌布置和选项

对于显示的 MWE,我设法将数据以表格形式放入并使用 [逐项] 列表,但是,我遇到以下问题:

  • 我需要使用 [easylist] 包而不是 [itemize] 包,但这似乎不起作用。

  • 对于最后一列的合并行,我遇到的问题是:尽管能够插入逐项列表,但它似乎忽略了行之间尺寸的不均匀分布,因此它扩展了第二行,而第一行保持相同的高度,我需要将额外的空间均匀分布在行之间。

  • 同样,当使用多行时:虽然我合并了 2 行,但我合并了 6 行以正确获取文本位置,尽管表中只有 3 行,所以它应该给我一个错误。

  • 最后,我怎样才能删除右上角的垂直线(第一列最上面的单元格是空的,我设法删除了上面的线,但垂直线我没能删除它)

\documentclass[a4paper,12pt,twoside]{book}
\usepackage[a4paper,top=2.5cm,bottom=2.5cm,margin=2.5cm,bindingoffset=0.5cm]{geometry} 

\usepackage[hidelinks,colorlinks=true,breaklinks,allcolors=blue]{hyperref} 

\usepackage[bidi=basic,layout=lists.tabular]{babel}
\babelprovide[import=ar,mapdigits,main]{arabic}
\babelprovide[import=en,language=Default]{english}

\babelfont{rm}{Latin Modern Roman}
\babelfont[arabic]{rm}{Simplified Arabic}
\babelfont[english]{rm}{Times New Roman}

\usepackage{enumitem}
\setlistdepth{9}
\setlist[itemize,1]{label=$\bullet$}
\setlist[itemize,2]{label=$\bullet$}
\setlist[itemize,3]{label=$\bullet$}
\setlist[itemize,4]{label=$\bullet$}
\setlist[itemize,5]{label=$\bullet$}
\setlist[itemize,6]{label=$\bullet$}
\setlist[itemize,7]{label=$\bullet$}
\setlist[itemize,8]{label=$\bullet$}
\setlist[itemize,9]{label=$\bullet$}
\renewlist{itemize}{itemize}{9}
\setlist[itemize]{noitemsep, topsep=0pt} 

\usepackage[at]{easylist}
\usepackage[table]{xcolor}
\usepackage{tabu,multirow}
\usepackage{array}
\newcolumntype{?}[1]{!{\vrule width #1}}
\usepackage{booktabs}




\title{jhhjjhhj}
\author{}
\date{}

\begin{document}
\chapter{شكر وتقدير} 


\begin{table}[htbp]
\setlength\arrayrulewidth{1pt}
\begin{center}
\caption{التفخيم والترقيقXIV باللغة العربية}
\label{tab:التفخيم والترقيق}
\begin{tabular}{?{1mm}>{\centering\arraybackslash}m{1cm}?{1mm}>{\centering\arraybackslash}m{2.5cm}|>{\centering\arraybackslash}m{2cm}|>{\centering\arraybackslash}m{2cm}|>{\centering\arraybackslash}m{5cm}?{1mm}} 
\rowcolor{white}
\cmidrule[2.5pt]{2-5}
\rowcolor{white} 


 &
\textbf{التعريف}
 &
\textbf{الحروف}
 & 
\textbf{أمثلة}
 & 
\textbf{ملاحظات}  
\\
\rowcolor{gray!25}  
\midrule[2.5pt]
\textbf{التفخيم}
 &
تسمين صوت الحرف عند النطق به
 &
"خُـصّ ضَـغْـطٍ قِـظْ" (تسمى حروف الاستعلاء)
 & 
 خــالـديـن
الــصـادقـين
الــضـالـين
 &  
\cellcolor{white}
\\
  \cmidrule[2pt]{1-4} 
\textbf{الترقيق}
 &
تنحيف صوت الحرف عند النطق به
 &
بـاقي أحرف اللغة العربية (تسمى حروف الاستفال)
 & 
الــتــائـبون
الــعابدون
الــحامدون
 &  
\cellcolor{white}\multirow{-6}{*}
{\parbox{5cm}
{
\textbf{وهنالك أحرف الأصل فيها الترقيق ولكنها تفخم في الحالات التالية:}
}}
\begin{itemize}[leftmargin=0.3cm]
\item
الألف المدية :
\begin{itemize}[leftmargin=0.3cm]
\item
 تتبع ما قبلها تفخيما وترقيقا.
\end{itemize}
\end{itemize}
\begin{itemize}[leftmargin=0.3cm]
\item
حرف اللام في لفظ الجلالة(الله):
\begin{itemize}[leftmargin=0.3cm]
\item
إذا سبق لفظ الجلالة فتح أو ضم
\item
عند البدء ب لفظ الجلالة.
\end{itemize}
\end{itemize}
\begin{itemize}[leftmargin=0.3cm]
\item
 حرف الراء:
\begin{itemize}[leftmargin=0.3cm]
\item
عندما يكون مفتوحا أو مضموما.
\item
عندما يكون ساكنا III وقبله فتح أو ضم.
\item
 عندما يأتي ساكنا III بعد كسر وبعده في الكلمة نفسها حرف تفخيم.
\item
عندما يقع بعد كسر عارض.
\end{itemize}
\end{itemize}
\\
\bottomrule[1mm] 
\end{tabular}
\end{center}
\end{table}
\end{document}

输出 + 描述

答案1

恐怕我对这个easylist软件包不太熟悉。不过我相信以下解决方案(依赖于该enumitem软件包的功能)可以满足您的要求。

请注意,我已大大简化了前言的结构和左侧列中的嵌套列表结构。我还切换到一个tabularx环境,它(我相信)简化了许多列宽计算,并自动确保表格适合文本块。最后,不再需要加载包multirow

如果您希望将二级项目的符号从 更改为\textbullet\textendash只需将指令更改\setlist[itemize,2]{label={\small\textbullet}, leftmargin=3mm, nosep}\setlist[itemize,2]{label=\textendash, leftmargin=3mm, nosep}

在此处输入图片描述

% !TEX TS-program = lualatex
\documentclass[a4paper,12pt,twoside]{book}
\usepackage[margin=2.5cm,bindingoffset=0.5cm]{geometry} 
\usepackage[table]{xcolor}
\usepackage{booktabs}

\usepackage[bidi=basic,layout=lists.tabular]{babel}
\babelprovide[import=ar,mapdigits,main]{arabic}
\babelprovide[import=en,language=Default]{english}
\babelfont{rm}{Latin Modern Roman}
\babelfont[arabic]{rm}{Simplified Arabic} 
\babelfont[english]{rm}{Times New Roman}

\usepackage{enumitem}
\setlist[itemize,1]{label=\textbullet, left=0pt, nosep,
    before={\begin{minipage}[t]{\hsize}\raggedright}, 
    after ={\end{minipage}}}
\setlist[itemize,2]{label={\small\textbullet}, leftmargin=3mm, nosep}

\usepackage{tabularx}
\renewcommand{\tabularxcolumn}[1]{m{#1}} % vertical centering
\newcolumntype{?}[1]{!{\vrule width #1}}
\newcolumntype{M}[1]{>{\centering\arraybackslash}m{#1}}
\newcolumntype{L}{>{\raggedright\arraybackslash}X}

%% Load the 'hyperref' package last:
\usepackage[hidelinks,colorlinks=true,allcolors=blue]{hyperref} 

\begin{document}

\chapter{شكر وتقدير} 

\begin{table}[htbp]
\setlength\arrayrulewidth{1pt} % default is '0.4pt'
\caption{التفخيم والترقيقXIV باللغة العربية}
\label{tab:التفخيم والترقيق}
\begin{tabularx}{\textwidth}{%
   ?{1mm}
   M{1cm}
   ?{1mm}
   M{2.5cm}|  
   M{2cm}|
   M{2cm}|
   L
   ?{1mm}} 
\cmidrule[2.5pt]{2-5}
%% first header row:
\multicolumn{1}{r@{\vrule width 1mm}}{} % empty first cell
 & \textbf{التعريف}
 & \textbf{الحروف}
 & \textbf{أمثلة}
 & \hfil\textbf{ملاحظات}\hfill
\\
\midrule[2.5pt]
%% second header row:
\rowcolor{gray!25}  
\textbf{التفخيم}
 &
تسمين صوت الحرف عند النطق به
 &
"خُـصّ ضَـغْـطٍ قِـظْ" (تسمى حروف الاستعلاء)
 & 
 خــالـديـن
الــصـادقـين
الــضـالـين
 &  
\cellcolor{white} 
\textbf{وهنالك أحرف الأصل فيها الترقيق ولكنها تفخم في الحالات التالية:}
\\
\cmidrule[2pt]{1-4} 
%% body of table:
\textbf{الترقيق}
 &
تنحيف صوت الحرف عند النطق به
 &
بـاقي أحرف اللغة العربية (تسمى حروف الاستفال)
 & 
الــتــائـبون
الــعابدون
الــحامدون
 &  
\begin{itemize} % start level 1
\item 
الألف المدية :
\begin{itemize} % start level 2
\item
 تتبع ما قبلها تفخيما وترقيقا.
\end{itemize} % end level 2
\item
حرف اللام في لفظ الجلالة(الله):
\begin{itemize} % start level 2
\item
إذا سبق لفظ الجلالة فتح أو ضم
\item
عند البدء ب لفظ الجلالة.
\end{itemize} % end level 2
\item 
 حرف الراء:
\begin{itemize} % start level 2
\item 
عندما يكون مفتوحا أو مضموما.
\item
عندما يكون ساكنا III وقبله فتح أو ضم.
\item
 عندما يأتي ساكنا III بعد كسر وبعده في الكلمة نفسها حرف تفخيم.
\item
عندما يقع بعد كسر عارض.
\end{itemize} % end level 2
\end{itemize} % end level 1
\\
\bottomrule[1mm] 
\end{tabularx}
\end{table}
\end{document}

附录:我不得不说,表格中的垂直虚线并不美观,而且垂直线和水平线似乎都过于粗重,没有必要。以下变体解决方案通过将所有规则的宽度设置为1pt(系统默认值为0.4pt),使用\hline\cline代替\midrule、、\cmidrule\bottomrule,并将长度参数的值设置\extrarowheight为来解决这些问题4pt

在此处输入图片描述

% !TEX TS-program = lualatex
\documentclass[a4paper,12pt,twoside]{book}
\usepackage[margin=2.5cm,bindingoffset=0.5cm]{geometry} 
\usepackage[table]{xcolor}
%\usepackage{booktabs}  % no longer needed

\usepackage[bidi=basic,layout=lists.tabular]{babel}
\babelprovide[import=ar,mapdigits,main]{arabic}
\babelprovide[import=en,language=Default]{english}
\babelfont{rm}{Latin Modern Roman}
\babelfont[arabic]{rm}{Simplified Arabic} 
\babelfont[english]{rm}{Times New Roman}

\usepackage{enumitem}
\setlist[itemize,1]{label=\textbullet, left=0pt, nosep,
    before={\begin{minipage}[t]{\hsize}\raggedright}, 
    after ={\end{minipage}}}
\setlist[itemize,2]{label={\small\textbullet}, leftmargin=3mm, nosep}

\usepackage{tabularx}
\renewcommand{\tabularxcolumn}[1]{m{#1}}
\newcolumntype{M}[1]{>{\centering\arraybackslash}m{#1}}
\newcolumntype{L}{>{\raggedright\arraybackslash}X}

%% load 'hyperref' last:
\usepackage[hidelinks,colorlinks=true,allcolors=blue]{hyperref} 

\begin{document}

\chapter{شكر وتقدير} 

\begin{table}[htbp]
\setlength\arrayrulewidth{1pt}
\setlength\extrarowheight{4pt}
\caption{التفخيم والترقيقXIV باللغة العربية}
\label{tab:التفخيم والترقيق}
\begin{tabularx}{\textwidth}{%
   |
   M{1cm}
   |
   M{2.5cm}|  
   M{2cm}|
   M{2cm}|
   L
   |} 
\cline{2-5}
%% first header row
   \multicolumn{1}{c|}{} % empty first cell
 & \textbf{التعريف}
 & \textbf{الحروف}
 & \textbf{أمثلة}
 & \multicolumn{1}{c|}{\textbf{ملاحظات}}
\\
\hline
%% second header row
\rowcolor{gray!20}  
\textbf{التفخيم}
 &
تسمين صوت الحرف عند النطق به
 &
"خُـصّ ضَـغْـطٍ قِـظْ" (تسمى حروف الاستعلاء)
 & 
 خــالـديـن
الــصـادقـين
الــضـالـين
 &  
\cellcolor{white} 
\textbf{وهنالك أحرف الأصل فيها الترقيق ولكنها تفخم في الحالات التالية:}
\\
\cline{1-4} 
%% body of table
\textbf{الترقيق}
 &
تنحيف صوت الحرف عند النطق به
 &
بـاقي أحرف اللغة العربية (تسمى حروف الاستفال)
 & 
الــتــائـبون
الــعابدون
الــحامدون
 &  
\begin{itemize} % start level 1
\item 
الألف المدية :
\begin{itemize} % start level 2
\item
 تتبع ما قبلها تفخيما وترقيقا.
\end{itemize} % end level 2
\item
حرف اللام في لفظ الجلالة(الله):
\begin{itemize} % start level 2
\item
إذا سبق لفظ الجلالة فتح أو ضم
\item
عند البدء ب لفظ الجلالة.
\end{itemize} % end level 2
\item 
 حرف الراء:
\begin{itemize} % start level 2
\item 
عندما يكون مفتوحا أو مضموما.
\item
عندما يكون ساكنا III وقبله فتح أو ضم.
\item
 عندما يأتي ساكنا III بعد كسر وبعده في الكلمة نفسها حرف تفخيم.
\item
عندما يقع بعد كسر عارض.
\end{itemize} % end level 2
\end{itemize} % end level 1
\\
\hline %% \bottomrule[1mm] 
\end{tabularx}
\end{table}
\end{document}

答案2

  • 首先,关于行高不等:避免使用 mini-page 或 parbox,而multirow使用带有其选项的包以便更好地合并行。

  • \rule{0cm}{5.5cm}其次,通过对想要增加高度的行使用命令来获得额外的行高。

  • 第三,通过添加额外的空列来获得第一列的正确垂直对齐,@{}m{0cm}@{}如中所述表格中的垂直对齐:m 列,行大小 - 最后一列存在问题

  • 第四,关于删除表格中某些部分的竖线:给出的答案删除表格的垂直线显示如何使用multicolumn选项控制表中的垂直线以覆盖表开头定义的列。

  • 最后,关于 的使用Easy-list,这需要进一步的尝试才能解决。包装手册提到了使用\activate和的一些内容\deactivate,但是,要找到解决方案有点困难。

修改后的解决方案如下:

在此处输入图片描述

\documentclass[a4paper,12pt,twoside]{book}
\usepackage[a4paper,top=2.5cm,bottom=2.5cm,margin=2.5cm,bindingoffset=0.5cm]{geometry} 


\usepackage[bidi=basic,layout=lists.tabular]{babel}
\babelprovide[import=ar,mapdigits,main]{arabic}
\babelprovide[import=en,language=Default]{english}

\babelfont{rm}{Latin Modern Roman}
\babelfont[arabic]{rm}{Simplified Arabic}
\babelfont[english]{rm}{Times New Roman}

\usepackage{enumitem}
\setlistdepth{9}
\setlist[itemize,1]{label=$\bullet$}
\setlist[itemize,2]{label=$\bullet$}
\setlist[itemize,3]{label=$\bullet$}
\setlist[itemize,4]{label=$\bullet$}
\setlist[itemize,5]{label=$\bullet$}
\setlist[itemize,6]{label=$\bullet$}
\setlist[itemize,7]{label=$\bullet$}
\setlist[itemize,8]{label=$\bullet$}
\setlist[itemize,9]{label=$\bullet$}
\renewlist{itemize}{itemize}{9}
\setlist[itemize]{noitemsep, topsep=0pt} 

\usepackage[at]{easylist}
\ListProperties(
                Style1*=\textbullet\ \ ,
                Style2*=\begin{normalfont}\begin{bfseries}\textendash\end{bfseries}\end{normalfont} \ \ ,
                Style3*=\textasteriskcentered\ \ ,
                Style4*=\textperiodcentered\ \ ,
                Style5*=\textbullet\ \ ,
                Style6*=\begin{normalfont}\begin{bfseries}\textendash\end{bfseries}\end{normalfont}\ \ ,
                Style7*=\textasteriskcentered\ \ ,
                Style8*=\textperiodcentered\ \ ,
                Hide1=1,
                Hide2=2,
                Hide3=3,
                Hide4=4,
                Hide5=5,
                Hide6=6,
                Hide7=7,
                Hide8=8 )
\usepackage[table]{xcolor}
\usepackage{tabu,multirow}
\usepackage{array}
\newcolumntype{?}[2]{!{\vrule width #1}}
\usepackage{booktabs}




\title{jhhjjhhj}
\author{}
\date{}

\begin{document}
\chapter{شكر وتقدير} 


\begin{table}[htbp]
\setlength\arrayrulewidth{1pt}
\begin{center}
\caption{التفخيم والترقيقXIV باللغة العربية}
\label{tab:التفخيم والترقيق}
\begin{tabular}{@{}m{0cm}@{}?{1mm}>{\centering\arraybackslash}c?{1mm}>{\centering\arraybackslash}m{2cm}|>{\centering\arraybackslash}m{2cm}|>{\centering\arraybackslash}m{1.5cm}|>{\centering\arraybackslash}m{6.5cm}?{1mm}}
\rowcolor{white}
\cmidrule[2.5pt]{3-6}
\rowcolor{white} 
\multicolumn{1}{c}{}
\cellcolor{white}
 &

 &
\textbf{التعريف}
 &
\textbf{الحروف}
 & 
\textbf{أمثلة}
 & 
\textbf{ملاحظات}  
\\
\cmidrule[2pt]{2-6}
\rowcolor{gray!25}   
\rule{0cm}{5.5cm} 
\cellcolor{white}
 &
\textbf{التفخيم}
 &
تسمين صوت الحرف عند النطق به
 &
"خُـصّ ضَـغْـطٍ قِـظْ" (تسمى حروف الاستعلاء)
 & 
 خــالـديـن
الــصـادقـين
الــضـالـين
 &  
\cellcolor{white}
\multirow[c]{2}{=}[2.5cm]
{
\textbf{وهنالك أحرف الأصل فيها الترقيق ولكنها تفخم في الحالات التالية:}
\begin{itemize}
\item
الألف المدية :
\begin{itemize}
\item
 تتبع ما قبلها تفخيما وترقيقا.
\end{itemize}
\end{itemize}
\begin{itemize}
\item
حرف اللام في لفظ الجلالة(الله):
\begin{itemize}
\item
إذا سبق لفظ الجلالة فتح أو ضم
\item
عند البدء ب لفظ الجلالة.
\end{itemize}
\end{itemize}
\begin{itemize}
\item
حرف الراء:
\begin{itemize}
\item
عندما يكون مفتوحا أو مضموما.
\item
عندما يكون ساكنا III وقبله فتح أو ضم.
\item
عندما يأتي ساكنا III بعد كسر وبعده في الكلمة نفسها حرف تفخيم.
\item
عندما يقع بعد كسر عارض.
\end{itemize}
\end{itemize}
}
\\
  \cmidrule[2pt]{2-5} 
  \rule{0cm}{5.5cm}
  \cellcolor{white}
 &
    \textbf{الترقيق}
 &
تنحيف صوت الحرف عند النطق به
 &
بـاقي أحرف اللغة العربية (تسمى حروف الاستفال)
 & 
الــتــائـبون
الــعابدون
الــحامدون
 &  

\\
\cmidrule[2pt]{2-6}
\end{tabular}
\end{center}
\end{table}
\end{document}

相关内容