我有一张长表。这是我的代码
\documentclass[12pt,a4paper]{article}
\usepackage{amsmath,amsxtra,amssymb,latexsym, amscd,amsthm}
\usepackage{indentfirst}
\usepackage[mathscr]{eucal}
\usepackage{graphicx}
\usepackage{makecell}
\usepackage{longtable}
\usepackage[left=2cm,right=2cm,top=2cm,bottom=2cm]{geometry}
\usepackage{answers}
\theoremstyle{definition}
\newtheorem{cauhoi}{Quetion}
\Newassociation{ans}{Soln}{hint}
\renewcommand{\Solnlabel}[1]{{\bf Answer #1}.}
\newenvironment{point}{%
\par\noindent
\begin{longtable}[t]{|p{14cm}|p{1.2cm}|}
\hline
}{%
\end{longtable}
}
\newcommand\diem[1]{ & \hfil \textbf{#1} \\ \hline}
\newcommand\tongdiem[1]{\dotfill [\textbf{#1} points]}
%\newcommand\tongdiem[1]{\fill [\textbf{#1} điểm]}
\usepackage{mathpazo}
\begin{document}
\setlength{\baselineskip}{16truept}
\Opensolutionfile{hint}[ans]
\thispagestyle{empty}
\begin{center}
QUESTIONS
\end{center}
\begin{cauhoi}%1
(2 points) Find the domain of definition of the function \begin{equation*}
y = \sqrt{x^2 - 3x + 2} + \dfrac{1}{x + 4}.
\end{equation*}
\begin{ans}\tongdiem{2.5}
\begin{point}
First \diem{1}
This is
\diem{1.0}
Second
\diem{0.5}
\end{point}
\end{ans}
\end{cauhoi}
\begin{cauhoi}%2
(2 points) Solve the equation \begin{equation*}
\sqrt{x + 1} + \sqrt{x + 2}-\sqrt{x + 3} =5.
\end{equation*}
\begin{ans}\tongdiem{2.5}
\begin{point}
First \diem{1}
Second
\diem{1.0}
Thirt
\diem{0.5}
\end{point}
\end{ans}
\end{cauhoi}
\vfill
\noindent \hrulefill
\Closesolutionfile{hint}
\newpage
\begin{center}
\large\textbf{ANSWER}
\end{center}
\Readsolutionfile{hint}
\end{document}
我想要输出有格式。请帮帮我。
答案1
您可以使用以下方法使两侧对齐:
\begin{longtable}[t]{|p{14cm}|p{\dimexpr\linewidth-14cm-3\tabcolsep-2\arrayrulewidth\relax}@{}|}
这将计算右列所需的宽度以填充它。
如果您只想在右侧对齐,则可以使用可选参数来longtable
指定表格要r
右对齐:
\begin{longtable}[r]{|p{14cm}|p{1.2cm}|}
笔记:
- 选择
[showframe]
包裹geometry
用于让我们能够看到页边距。 仅用于显示页边距。 - 另一个选择是使用包裹
tabularx
它允许X
列类型扩展以填充指定的宽度。 - 此外你应该看看包裹
booktabs
以获得更加专业的表格。 - 正如 Marco Daniel 所评论的,你还应该看看包裹
ltxtable
它提供了环境内部的longtable
和的功能。tabularx
longtable