我如何改变 algrenewcommand 的风格?

我如何改变 algrenewcommand 的风格?

当我使用\algrenewcommand{\algorithmiccomment}[1]{\hfill// #1}它时,它具有以下注释样式:

在此处输入图片描述

相反,我可以有以下内容//,如果你仔细观察线的末端,你会发现它是一个半圆,而且角度更大。请注意,该图像取自 Cormen 的《算法导论》一书:

在此处输入图片描述


我的乳胶代码:

\documentclass[10pt,journal,compsoc]{IEEEtran}
\usepackage{amsmath}
\usepackage{algpseudocode}
\algrenewcommand{\algorithmiccomment}[1]{\hfill\textbf{//}\,#1}
\begin{document}
\phantom{} \\
\begin{algorithmic}[1]
  \If{$quality \geq 9$}
    \State $a \gets perfect$  \algorithmiccomment{\([\mathrm{A}]\)}
  \EndIf
\end{algorithmic}
\end{document}

在此处输入图片描述

答案1

首先,您应该避免使用 IEEEtran 对compsocPalatino 中的文本和 Computer Modern 中的数学的默认设置。

其次,多字母变量不应只是数学模式,而应是其中之一\mathrm\mathit否则字母间距会很奇怪而且不对)。使用命令可以通过对定义采取行动来更改首选项,而不是追逐整个文档。

最后,Palatino 中的斜线末端很尖锐。您展示的图片可能使用了 Computer Modern Typewriter 来制作斜线。

\documentclass[10pt,journal,compsoc]{IEEEtran}
\usepackage{amsmath}
\usepackage{algpseudocode}
\usepackage{newpxtext,newpxmath}

\algrenewcommand{\algorithmiccomment}[1]{\hfill\cslashes\ #1}

\algrenewcommand{\algorithmiccomment}[1]{\qquad\cslashes\ #1}

\newcommand{\cslashes}{{\fontfamily{cmtt}\selectfont/\!/}}
\newcommand{\tvar}[1]{\mathit{#1}}

\begin{document}

\begin{algorithmic}[1]
  \If{$\tvar{quality} \geq 9$}
    \State $a \gets \tvar{perfect}$  \algorithmiccomment{forest}
  \EndIf
\end{algorithmic}

\end{document}

请注意,第二次重新定义\algorithmiccomment只是为了获得较小的图片,请在代码中将其删除。

在此处输入图片描述

这是通过删除对 NewPX 的调用获得的具有默认(且有争议的) IEEEtran 样式的输出。

在此处输入图片描述

如果您不遵循格式化多字母变量的建议,则这里是输出。

在此处输入图片描述

IEEEtran宣布 Palatino的代码:

% V1.7 compsoc nonconference papers, use Palatino/Palladio as the main text font,
% not Times Roman.
\@IEEEcompsocnotconfonly{\renewcommand{\rmdefault}{ppl}}

如果你更换

\newcommand{\cslashes}{{\fontfamily{cmtt}\selectfont/\!/}}

\newcommand{\cslashes}{{\fontfamily{lmtt}\fontseries{b}\selectfont/\!/}}

你得到

在此处输入图片描述

相关内容