![如何在表格单元格中不留空格地拆分长字符?](https://linux22.com/image/351319/%E5%A6%82%E4%BD%95%E5%9C%A8%E8%A1%A8%E6%A0%BC%E5%8D%95%E5%85%83%E6%A0%BC%E4%B8%AD%E4%B8%8D%E7%95%99%E7%A9%BA%E6%A0%BC%E5%9C%B0%E6%8B%86%E5%88%86%E9%95%BF%E5%AD%97%E7%AC%A6%EF%BC%9F.png)
我已经创建了表格来呈现我的输出,其中样本的名称相当长,所以我需要拆分,因为如果不拆分,sharelatex
就不会打印出整个表格。但是,我曾经\\
打破字符串,但它会产生空格,输出 latex 表格对我来说不是想要的。有人能告诉我如何优化吗?有什么更好的主意吗?
以下是我使用的代码:
\begin{table}[h!]
\centering
\caption{output list}
\label{tab:table1.1}
\begin{tabular}{ccccc}
\toprule
Sample name & R\textsuperscript{sc} & R\textsuperscript{sd} & R\textsuperscript{wc} & R\textsuperscript{wd}\\
\midrule
wgEncodeOpenChromChip\\K562CmycAlnRep2 & {Myc1\_2} & 8763362 & 32850 & 311409\\
wgEncodeOpenChromChip\\K562CmycAlnRep3 & {Myc1\_3} & 9649688 & 13623 & 104911\\
\bottomrule
\end{tabular}
\end{table}
但上述代码的输出结果不是我想要的,我想将长字符拆分为换行符,但不包含空格。我该怎么做?还有更好的主意吗?非常感谢
编辑:如果我没有拆分长字符串,sharelatex
就不会打印出表中的其余列。如果我拆分字符串,则会引入空格。有没有更好的解决方案来优化代码?我在latex
社区中还很新。希望我的帖子清楚易懂。
答案1
也许是这样的?
如果您更喜欢顶部对齐而不是垂直居中,请使用p
而不是m
作为第一列的列类型。
\documentclass{article}
\usepackage{booktabs}
\usepackage{array} % for 'm' column type
\newlength\mylen
\settowidth\mylen{wgEncodeOpenChromChip} % determine width of 1st col.
\begin{document}
\begin{table}
\centering
\caption{output list}
\label{tab:table1.1}
\begin{tabular}{@{}m{\mylen}cccc@{}}
\toprule
Sample name & R\textsuperscript{sc} & R\textsuperscript{sd}
& R\textsuperscript{wc} & R\textsuperscript{wd}\\
\midrule
wgEncodeOpenChromChip K562CmycAlnRep2 & {Myc1\_2} & 8763362 & 32850 & 311409\\
wgEncodeOpenChromChip K562CmycAlnRep3 & {Myc1\_3} & 9649688 & 13623 & 104911\\
\bottomrule
\end{tabular}
\end{table}
\end{document}