我有下表:
\documentclass[a4paper,twoside,11pt,openany]{book}
\usepackage[utf8]{inputenc}
\usepackage[spanish,english]{babel}
\usepackage{tabulary}
\begin{document}
\begin{table}
\begin{tabulary}{\textwidth}{m{3.7cm} m{8cm} m{4cm}}
\textbf{Tarea} & \textbf{Descripcion} & \textbf{Tiempo estimado} \\ [1ex]
Análisis & Recopilación de requisitos & 12 h. \\
Diseño & Diseño a alto nivel de la aplicación & 20 h. \\
AppPreferences & Diseño e implementación del menú de preferencias de la aplicación & 10 h. \\
MainActivity & Diseño e implementación de la actividad principal de la aplicación & 16 h. \\
Dashboard & Diseño e implementación del fragmento del dashboard & 34 h. \\
LocalXBee & Diseño e implementación del fragmento del XBee local & 20 h. \\
XBeeNetwork & Diseño e implementación del fragmento de la red de Xbees & 24 h.\\
Log & Diseño e implementación del fragmento de registro de sucesos & 6 h.\\
BackgroundService & Diseño e implementación del servicio en segundo plano de la aplicación & 40 h.\\
Servicio AIDL & Creación de la interfaz AIDL y wrappers necesarios & 10 h.\\
Peticiones RCI & Diseño e implementación del sistema de procesamiento y respuesta de las peticiones RCI & 20 h.\\
Pruebas & Realización de pruebas de integración de la aplicación antes del cierre del proyecto & 20 h.\\
Documentación & Documentación del código & 6 h.\\
Reuniones & Reuniones de seguimiento y control con los tutores de la empresa & 20 h.\\
Memoria & Realización del documento para el Trabajo Fin de Grado & 30 h.\\
Presentación & Realización de las diapositivas y preparación de la defensa ante el tribunal & 12 h.\\[1ex]
\textbf{Total} & & \textbf{300} \\
\end{tabulary}
\caption{Descomposición del proyecto en tareas.}
\label{tab:planificacion}
\end{table}
\end{document}
结果是:
我想让最后一列文本右对齐。我该如何实现?
答案1
您当前的表格很难阅读,因此我想提出一种完全不同的方法:
% arara: pdflatex
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{siunitx}
\usepackage{booktabs}
\usepackage{chngcntr}
\counterwithin{table}{section}
\usepackage{etoolbox}
\begin{document}
\setcounter{section}{1}
\setcounter{table}{1}
\begin{table}
\robustify\bfseries
\centering
\sisetup{detect-weight}
\begin{tabular}{l S[table-format=3.0] S[table-format=3.0] S[table-format=-2.2]}
%\toprule % optional, if you like it
\textbf{Tarea} & \textbf{Estimación} en h. & \textbf{Dedicación} en h. & \textbf{Desviación} en \si{\percent} \\\addlinespace % or \midrule
Análisis & 12 & 8 & -33\\
Diseño & 20 & 18 & -10\\
AppPreferences & 10 & 12 & 20\\
MainActivity & 16 & 14 & -12\\
Dashboard & 34 & 40 & 17\\
LocalXBee & 20 & 35 & 75\\
XBeeNetwork & 24 & 14 & -58\\
Log & 6 & 20 & 233\\
BackgroundService & 40 & 42 & 5\\
Servicio AIDL & 10 & 12 & 20\\
Peticiones RCI & 20 & 16 & -20\\
Pruebas & 20 & 10 & -50\\
Documentación & 6 & 4 & -33\\
Reuniones & 20 & 17 & -15\\
Memoria & 30 & 34 & 13\\
Presentación & 12 & 10 & -16\\\addlinespace % or \midrule
\textbf{Total} & \bfseries 300 & \bfseries 302 & \bfseries 0,67 \\
%\bottomrule % optional, if you like it
\end{tabular}
\caption{Tiempos planificados, dedicados y desviaciones de las distintas tareas.}
\label{tab:control}
\end{table}
\end{document}
请注意,作为您文章的读者,最后一个单元格的值会让我感到惊讶。
更新:由于您在问题中提供了一个全新的表格,因此我这里有一个新的 MWE。我已调整了您的表格以使用tabulary
其L
和R
列(请阅读手册)。但我还提供了一个没有该包的解决方案,因为我认为这里不需要它:
% arara: pdflatex
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{siunitx}
\usepackage{booktabs}
\usepackage{etoolbox}
\usepackage{tabulary}
\usepackage{ragged2e,microtype}
\begin{document}
\begin{table}
\begin{tabulary}{\textwidth}{@{}L L R@{}}
\textbf{Tarea} & \textbf{Descripción} & \textbf{Tiempo estimado} \\ [1ex]
Análisis & Recopilación de requisitos & 12 h. \\
Diseño & Diseño a alto nivel de la aplicación & 20 h. \\
AppPreferences & Diseño e implementación del menú de preferencias de la aplicación & 10 h. \\
MainActivity & Diseño e implementación de la actividad principal de la aplicación & 16 h. \\
Dashboard & Diseño e implementación del fragmento del dashboard & 34 h. \\
LocalXBee & Diseño e implementación del fragmento del XBee local & 20 h. \\
XBeeNetwork & Diseño e implementación del fragmento de la red de Xbees & 24 h.\\
Log & Diseño e implementación del fragmento de registro de sucesos & 6 h.\\
BackgroundService & Diseño e implementación del servicio en segundo plano de la aplicación & 40 h.\\
Servicio AIDL & Creación de la interfaz AIDL y wrappers necesarios & 10 h.\\
Peticiones RCI & Diseño e implementación del sistema de procesamiento y respuesta de las peticiones RCI & 20 h.\\
Pruebas & Realización de pruebas de integración de la aplicación antes del cierre del proyecto & 20 h.\\
Documentación & Documentación del código & 6 h.\\
Reuniones & Reuniones de seguimiento y control con los tutores de la empresa & 20 h.\\
Memoria & Realización del documento para el Trabajo Fin de Grado & 30 h.\\
Presentación & Realización de las diapositivas y preparación de la defensa ante el tribunal & 12 h.\\[1ex]
\textbf{Total} & & \textbf{300} \\
\end{tabulary}
\caption{Descomposición del proyecto en tareas.}
\label{tab:planificacion}
\end{table}
\begin{table}
\robustify\bfseries
\centering
\begin{tabular}{@{}l >{\RaggedRight}p{5.87cm} @{}S[table-format=3.0,detect-weight]@{}}
\textbf{Tarea} & \textbf{Descripción} & \textbf{Tiempo est.\ (h.)} \\\addlinespace
Análisis & Recopilación de requisitos & 12 \\
Diseño & Diseño a alto nivel de la aplicación & 20 \\
AppPreferences & Diseño e implementación del menú de preferencias de la aplicación & 10 \\
MainActivity & Diseño e implementación de la actividad principal de la aplicación & 16 \\
Dashboard & Diseño e implementación del fragmento del dashboard & 34 \\
LocalXBee & Diseño e implementación del fragmento del XBee local & 20 \\
XBeeNetwork & Diseño e implementación del fragmento de la red de Xbees & 24\\
Log & Diseño e implementación del fragmento de registro de sucesos & 6\\
BackgroundService & Diseño e implementación del servicio en segundo plano de la aplicación & 40\\
Servicio AIDL & Creación de la interfaz AIDL y wrappers necesarios & 10\\
Peticiones RCI & Diseño e implementación del sistema de procesamiento y respuesta de las peticiones RCI & 20\\
Pruebas & Realización de pruebas de integración de la aplicación antes del cierre del proyecto & 20\\
Documentación & Documentación del código & 6\\
Reuniones & Reuniones de seguimiento y control con los tutores de la empresa & 20\\
Memoria & Realización del documento para el Trabajo Fin de Grado & 30\\
Presentación & Realización de las diapositivas y preparación de la defensa ante el tribunal & 12\\\addlinespace
\textbf{Total} & & \bfseries 300 \\
\end{tabular}
\caption{Descomposición del proyecto en tareas.}
\label{tab:planificacion}
\end{table}
\end{document}
答案2
相反,tabulary
我建议使用tabularx
。
\documentclass[a4paper,twoside,11pt,openany]{book}
\usepackage[utf8]{inputenc}
\usepackage{makecell,booktabs,tabularx}
\renewcommand\theadfont{\bfseries}
\usepackage{siunitx}
\usepackage{ragged2e}
\usepackage[active,floats,tightpage]{preview}
\setlength\PreviewBorder{1mm}%
\begin{document}
XXX
\begin{table}
\begin{tabularx}{\textwidth}{l >{\RaggedRight}X S[table-format=2.2]}
\thead{Tarea} & \thead{Descripcion}
& {\thead{Tiempo\\ estimado
\normalfont en \si{\percent}}} \\
\addlinespace % or \midrule
Análisis & Recopilación de requisitos
& 12\\
Diseño & Diseño a alto nivel de la aplicación
& 20\\
AppPreferences & Diseño e implementación del menú
de preferencias de la aplicación
& 10\\
MainActivity & Diseño e implementación de la actividad principal
de la aplicación
& 16\\
Dashboard & Diseño e implementación del fragmento del dashboard
& 34\\
LocalXBee & Diseño e implementación del fragmento
del XBee local
& 20\\
XBeeNetwork & Diseño e implementación del fragmento
de la red de Xbees
& 24\\
Log & Diseño e implementación del fragmento
de registro de sucesos
& 6\\
BackgroundService & Diseño e implementación del servicio en
segundo plano de la aplicación
& 40\\
Servicio AIDL & Creación de la interfaz AIDL y
wrappers necesarios
& 10\\
Peticiones RCI & Diseño e implementación del sistema de
procesamiento y respuesta de las peticiones RCI
& 20\\
Pruebas & Realización de pruebas de integración
de la aplicación antes del cierre del proyecto
& 20\\
Documentación & Documentación del código
& 6\\
Reuniones & Reuniones de seguimiento y control con
los tutores de la empresa
& 20\\
Memoria & Realización del documento para el Trabajo Fin
de Grado
& 30\\
Presentación & Realización de las diapositivas y preparación
de la defensa ante el tribunal
& 12\\
\addlinespace
\thead{Total} & & {\thead{300}}
\end{tabularx}
\caption{Descomposición del proyecto en tareas.}
\label{tab:planificacion}
\end{table}
\end{document}
如您所见,最后一列类型S
由包提供siunitx
(与在他的答案中使用@LaRiFaRi相同),而不是\textbf{...} is used
thead from package
makecell` 结果是:
如果您更喜欢最后一列右对齐,那么可以S
使用
>{\raggedleft}X
。