Latex算法行距

问题描述

我已经在乳胶中创建了一个算法,但是要插入一些额外的行距。 我目前有以下代码

\documentclass{article}

\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{caption}

\begin{document}

This this this

\begin{algorithm}
    \algblock[TryCatchFinally]{try}{endtry}
    \algcblock[TryCatchFinally]{TryCatchFinally}{finally}{endtry}
    \algcblockdefx[TryCatchFinally]{TryCatchFinally}{catch}{endtry}
    [1]{\textbf{catch} #1}
    {\textbf{end try}}  
    \caption{Task}
    \begin{algorithmic}[1]
        \Procedure {Task Check}{}        
        \State \parBox[t]{313pt}{$aaaaaaaaa\textunderscore aaaaaaa = Thread(aaaaaa=call\textunderscore service,args=(
            "aaaaa\textunderscore aaaaaa\textunderscore generation\textunderscore aaaa",Craaaaalan,"load\textunderscore plan\textunderscore aaaa")
            )$}
        \State \parBox[t]{313pt}{$aaaa-aaaaaaaaa\textunderscore aaaaaaa = Thread(aaaaaa=call\textunderscore service,"load\textunderscore plan\textunderscore aaaa")
            )$}
        \State \parBox[t]{313pt}{$aaaaaa\textunderscore aaaaaaa = Thread(aaaaaa=call\textunderscore service,"load\textunderscore plan\textunderscore aaaa")
            )$}     
        \EndProcedure
    \end{algorithmic}
\end{algorithm}

\end{document}

输出有点像这样:

Latex output pdf look

图像中的三个状态是相同的服务呼叫,但有少量更改。较小的变化是使用了不同的单词,因此使用了不同的长度。随附的示例代码包含准确的长度。我也需要 State 7 输出,但是由于有些多余的单词,它没有遵循格式。知道如何纠正状态5 和**状态6 **,使其看起来像状态7 吗?

有和没有数学模式的色差

enter image description here

谢谢

解决方法

数学模式完全不适合设置逐字内容,例如变量名。缺少换行符应该是您最少的担心。字距调整不正确,引号错误,减​​号代替连字符...

您可以尝试使用参差不齐的普通文本,但我会排版诸如源代码之类的内容,例如使用app.get('/weather',async (req,res,next) => { const data = await apiCall(); res.send(data); }); 包:

listings

enter image description here

或者如果您坚持使用斜体字体:

\documentclass{article}



\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{caption}

\usepackage{listings}
\lstset{basicstyle=\ttfamily,breaklines}

\begin{document}

\begin{algorithm}
    \algblock[TryCatchFinally]{try}{endtry}
    \algcblock[TryCatchFinally]{TryCatchFinally}{finally}{endtry}
    \algcblockdefx[TryCatchFinally]{TryCatchFinally}{catch}{endtry}
    [1]{\textbf{catch} #1}
    {\textbf{end try}}  
    \caption{Task}
    \begin{algorithmic}[1]
        \Procedure {Task Check}{}        
        \State \parbox[t]{313pt}{\raggedright\lstinline{aaaaaaaaa_aaaaaaa = Thread(aaaaaa=call_service,args=("aaaaa_aaaaaa_generation_aaaa",Craaaaalan,"load_plan_aaaa"))}}
        \State \parbox[t]{313pt}{\raggedright\lstinline{aaaa-aaaaaaaaa_aaaaaaa = Thread(aaaaaa=call_service,"load_plan_aaaa"))}}
        \State \parbox[t]{313pt}{\raggedright\lstinline{aaaaaa_aaaaaaa = Thread(aaaaaa=call_service,"load_plan_aaaa"))}}     
        \EndProcedure
    \end{algorithmic}
\end{algorithm}

\end{document}

enter image description here

或者甚至带有换行符的真实列表等也可以使内容更具可读性:

\documentclass{article}



\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{caption}

\usepackage{listings}
\lstset{basicstyle=\itshape,"load_plan_aaaa"))}}     
        \EndProcedure
    \end{algorithmic}
\end{algorithm}

\end{document}

enter image description here