tabularx を使用せずに X 列と同じ効果を得るにはどうすればよいでしょうか?

tabularx を使用せずに X 列と同じ効果を得るにはどうすればよいでしょうか?

パッケージに少し問題がありますtabularx。そのため、列型のように、残りのすべてのスペースを占める列を持つテーブルを作成したいと思いますX

次の MWE では、最後の列の幅が手動で 5 cm に設定されています。 ? を使用せずに、ページの残りの幅全体を自動的に埋めるこの幅を設定する方法はありますかtabularx?

\documentclass[12pt,a4paper]{article}
\usepackage{blindtext}
\usepackage[%
    left=3.00cm,
    right=2.00cm,
    top=3.00cm,
    bottom=2.00cm,
    showframe
]{geometry}
\usepackage{booktabs}
\usepackage{array}

\begin{document}
\begin{table}[h]
\centering
\caption{Caption}
\label{Label}
\begin{tabular}{lcp{5cm}}
\toprule
\textbf{Head 1} & \textbf{Head 2} & \textbf{Head 3} \\
\midrule
Row             & Row             & \blindtext             \\
Row             & Row             & Row             \\
Row             & Row             & Row             \\
Row             & Row             & Row             \\
Row             & Row             & Row             \\
\bottomrule
\end{tabular}
\end{table}
\end{document}

ここに画像の説明を入力してください

編集1:私の論文には、私が抱えている問題点を示すtabularx実際の事例が載っています。

私の前文では:

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{xfrac}
\usepackage{textcomp}
\usepackage[bitstream-charter]{mathdesign}
\usepackage{makeidx}
\usepackage{graphicx,graphics}
\usepackage{bookmark}
\usepackage[%
    left=3.00cm,
    right=2.00cm,
    top=3.00cm,
    bottom=2.00cm
]{geometry}
\usepackage[brazil]{babel} 
\usepackage[none]{hyphenat} 
\usepackage{multirow} 
\usepackage{multicol}
\usepackage{pdflscape} 
\usepackage{tabularx} 
\usepackage{subcaption} 
\usepackage{tocloft}
\usepackage[parfill]{parskip} 
\usepackage{icomma}
\usepackage[%
    inline,         
    shortlabels     
]{enumitem}
\usepackage{bigstrut}
\usepackage{booktabs}
\usepackage{afterpage}
\usepackage{rotating}
\usepackage{microtype}
\usepackage{tabto} 
\usepackage{expl3}
\ExplSyntaxOn
\tex_let:D \c_minus_one \scan_stop:
\int_const:Nn \c_minus_one {-1}
\ExplSyntaxOff
\usepackage{acro}
\usepackage[%
    font=footnotesize,      
    justification=centering,
    figurewithin=section,
    tablewithin=section
]{caption}
\usepackage{siunitx}
\usepackage{layouts} 
\usepackage{sectsty}
\usepackage{secdot}
\usepackage{mfirstuc}
\usepackage[export]{adjustbox}
\usepackage{array}
\usepackage{colortbl}
\usepackage{makecell}
\usepackage{ltablex}
\usepackage{threeparttable}
\usepackage[referable]{threeparttablex}
\usepackage{pdfpages}
\usepackage{chemformula}
\usepackage{footnotebackref}
\usepackage{footnotehyper}
\usepackage[%
backend=biber,
citestyle=authoryear-comp,  
bibstyle=authoryear,        
giveninits=true,            
maxcitenames=2,         
uniquelist=false,       
uniquename=false,       
sorting=ynt,            
sortcites,              
maxbibnames=99,         
url=false,              
eprint=false,           
dashed=false,           
]{biblatex}
\usepackage{setspace}
\usepackage{hyperref}
\usepackage[%
noabbrev,
nameinlink,
sort
]{cleveref}
\keepXColumns

テーブルにはtabularx

\begin{table}
\footnotesize
\centering
\begin{tabularx}{\linewidth}{lcX}%
\caption{Locais e frequência de amostragem dos parâmetros monitorados em cada unidade do sistema de filtração}%
\label{tab:locais_e_freq}%
\\
\midrule
\textbf{\makecell{Parâmetro}}   & \textbf{\makecell{Local de\\amostragem}}  & \textbf{Frequência de amostragem} \\
\midrule
Turbidez                                & Afluente e efluente               & Diária                               \\
Cor aparente                            & Afluente e efluente               & Diária                               \\
Cor verdadeira                          & Afluente e efluente               & Diária                               \\
Coliformes totais                       & Afluente e efluente               & Diária                               \\
\Acf{ecoli}                             & Afluente e efluente               & Diária                               \\
\Acf{clorofilaa}                        & Afluente e efluente               & Diária                               \\
Densidade celular de
\acs{craciborskii}                      & Afluente e efluente               & ---                                  \\
\Acf{CYN}                               & Afluente e efluente               & Diária                               \\
Absorbância UV                          & Afluente e efluente               & $\rm{3\times semana}$                \\
pH                                      & Afluente                          & Diária                               \\
Temperatura                             & Afluente                          & Diária                               \\
Condutividade                           & Afluente                          & Diária                               \\
\Acf{OD}                                & Afluente                          & Diária                               \\
Alcalinidade                            & Afluente                          & $\rm{3\times semana}$                \\
\midrule
\end{tabularx}
\end{table}

結果はマージンを尊重していない

ここに画像の説明を入力してください

テーブルを作成するとtabularx

\begin{table}
\footnotesize
\centering
\caption{Locais e frequência de amostragem dos parâmetros monitorados em cada unidade do sistema de filtração}%
\label{tab:locais_e_freq}%
\begin{tabular}{lcp{6.5cm}}%
\midrule
\textbf{\makecell{Parâmetro}}   & \textbf{\makecell{Local de\\amostragem}}  & \textbf{Frequência de amostragem} \\
\midrule
Turbidez                                & Afluente e efluente               & Diária                               \\
Cor aparente                            & Afluente e efluente               & Diária                               \\
Cor verdadeira                          & Afluente e efluente               & Diária                               \\
Coliformes totais                       & Afluente e efluente               & Diária                               \\
\Acf{ecoli}                             & Afluente e efluente               & Diária                               \\
\Acf{clorofilaa}                        & Afluente e efluente               & Diária                               \\
Densidade celular de
\acs{craciborskii}                      & Afluente e efluente               & ---                                  \\
\Acf{CYN}                               & Afluente e efluente               & Diária                               \\
Absorbância UV                          & Afluente e efluente               & $\rm{3\times semana}$                \\
pH                                      & Afluente                          & Diária                               \\
Temperatura                             & Afluente                          & Diária                               \\
Condutividade                           & Afluente                          & Diária                               \\
\Acf{OD}                                & Afluente                          & Diária                               \\
Alcalinidade                            & Afluente                          & $\rm{3\times semana}$                \\
\midrule
\end{tabular}
\end{table}

結果はOK

ここに画像の説明を入力してください

答え1

Xパッケージの列とは、LaTeX が幅に関する計算を行った列にtabularx他なりません。p

原則として、これらの計算を手作業で行うことは可能ですが、なぜそうしたいのか私には想像できません。 :-) \newlength、、、、settowidthなど\setlengthの指示語\dimexpr\relaxすぐに使いこなせるようになります...

次のコードに付随するスクリーンショットは投稿しません。

\documentclass[12pt,a4paper]{article}
\usepackage[left=3cm,right=2cm,top=3cm,bottom=2cm]{geometry}
\usepackage{blindtext,booktabs,tabularx}
\begin{document}

\noindent
\begin{tabularx}{\textwidth}{@{}ll X @{}}
\toprule
\textbf{Head 1} & \textbf{Head 2} & \textbf{Head 3} \\
\midrule
Row & Row & \blindtext \\
\bottomrule
\end{tabularx}


%% some tedious calculations:
\newlength{\lena}
\newlength{\lenb}
\newlength{\lenc}
\settowidth{\lena}{\textbf{Head 1}} % width of widest line in col. 1
\settowidth{\lenb}{\textbf{Head 2}} % width of widest line in col. 2
\setlength{\lenc}{\dimexpr\textwidth-\lena-\lenb-4\tabcolsep\relax}

\smallskip\noindent
\begin{tabular}{@{}ll p{\lenc} @{}}
\toprule
\textbf{Head 1} & \textbf{Head 2} & \textbf{Head 3} \\
\midrule
Row & Row & \blindtext \\
\bottomrule
\end{tabular}

\end{document}

関連情報