PDFTex:在给出 \texttt 命令后,文本不会自动适合长表内的列

PDFTex:在给出 \texttt 命令后,文本不会自动适合长表内的列

我最近发布了一个关于如何更改特定文本的字体系列的问题这里

我找到了解决方案这里(以及我最近的帖子评论),使用\usepackage{inconsolata}。这是有关该包用法的文档序言。

\documentclass[12pt, a4paper, onecolumn, oneside, final]{report}
\makeatother

\usepackage{inconsolata}
\usepackage{listings}

\lstset{
    basicstyle=\fontfamily{zi4}\selectfont,
}
\renewcommand*{\ttdefault}{cmtt}


\begin{document}
   blablalbalbalbalblablab
\end{document}

当我在我的 longtable 中使用它时:

\begingroup
\setlength{\LTleft}{-20cm plus -1fill}
\setlength{\LTright}{\LTleft}
\begin{small}
    \begin{longtable}{|p{0.4cm}|p{3cm}|p{1.8cm}|p{1.8cm}|p{1.7cm}|p{3.55cm}|}
        \caption{Daftar \textit{Method} yang Digunakan} \label{tbl:pandas}\\
        \hline
        \multirow{2}{*}{\textbf{No}} & \multirow{2}{*}{\textit{\textbf{Method}}} & \multicolumn{2}{c|}{\textit{\textbf{Input}}} & \multirow{2}{*}{\textit{\textbf{Output}}} & 
        \multirow{2}{*}{\textbf{Keterangan}}\\
        \cline{3-4}
        & & \textbf{Tipe} & \textbf{Variabel} & & \\
        \endfirsthead
        \multicolumn{6}{c}{\textbf{\tablename~\thetable} Daftar \textit{Method} yang Digunakan (Lanjutan)}\\
        \hline
        \multirow{2}{*}{\textbf{No}} & \multirow{2}{*}{\textit{\textbf{Method}}} & \multicolumn{2}{c|}{\textit{\textbf{Input}}} & \multirow{2}{*}{\textit{\textbf{Output}}} & 
        \multirow{2}{*}{\textbf{Keterangan}}\\
        \cline{3-4}
        & & \textbf{Tipe} & \textbf{Variabel} & & \\
        \endhead
        \hline
        1 & \texttt{librosa.core.spectrum.stft(x, n\_fft = window\_size, hop\_length = hop\_length, window=window)} 
        & Array & Data & - & Fungsi untuk membaca berkas audio yang akan diproses. Dalam penelitian ini, parameter \textit{filename} memiliki ekstensi wav. Fungsi ini menghasilkan keluaran berupa larik data audio dan \textit{sample rate}\\
        \hline
        \hline
    \end{longtable}
\end{small}
\endgroup

生成的表格如下: 在此处输入图片描述

有没有办法,通过使用ttfamily并使特定文本自动适合列?

这是我想要的输出:(我使用 Ms.Word 制作的) 在此处输入图片描述

答案1

您的表格声明的列比您实际使用的列多得多,并且根据您稍后添加的所需输出图像判断,您不需要在任意字母之间中断字符串,只需在空白处正常中断即可。此外,您没有发布完整的测试文档,而是将片段放在一起,删除未使用的包并添加所需的包。

在此处输入图片描述

\documentclass[12pt, a4paper, onecolumn, oneside, final]{report}


\usepackage{longtable,array,multirow}



\begin{document}


\begin{small}
\setlength{\LTleft}{-20cm plus -1fill}
\setlength{\LTright}{\LTleft}
    \begin{longtable}{|l|>{\ttfamily\raggedright\footnotesize}p{5.5cm}|
l|l|l|
>{\raggedright\arraybackslash}p{3.55cm}|}
        \caption{Daftar \textit{Method} yang Digunakan} \label{tbl:pandas}\\
        \hline
        \multirow{2}{*}{\textbf{No}} & \multirow{2}{*}{\textit{\textbf{Method}}} & \multicolumn{2}{c|}{\textit{\textbf{Input}}} & \multirow{2}{*}{\textit{\textbf{Output}}} & 
        \multirow{2}{*}{\textbf{Keterangan}}\\
        \cline{3-4}
        & & \textbf{Tipe} & \textbf{Variabel} & & \\
        \endfirsthead
        \multicolumn{6}{c}{\textbf{\tablename~\thetable} Daftar \textit{Method} yang Digunakan (Lanjutan)}\\
        \hline
        \multirow{2}{*}{\textbf{No}} & \multirow{2}{*}{\textit{\textbf{Method}}} & \multicolumn{2}{c|}{\textit{\textbf{Input}}} & \multirow{2}{*}{\textit{\textbf{Output}}} & 
        \multirow{2}{*}{\textbf{Keterangan}}\\
        \cline{3-4}
        & & \textbf{Tipe} & \textbf{Variabel} & & \\
        \endhead
        \hline
        1 & \texttt{librosa.core.spectrum.stft(x, n\_fft = window\_size, hop\_length = hop\_length, window=window)} 
        & Array & Data & - & Fungsi untuk membaca berkas audio yang akan diproses. Dalam penelitian ini, parameter \textit{filename} memiliki ekstensi wav. Fungsi ini menghasilkan keluaran berupa larik data audio dan \textit{sample rate}\\
        \hline
        \hline
    \end{longtable}
\end{small}

\end{document}

相关内容