增加MSC包的标签宽度

增加MSC包的标签宽度

我正在使用MSC 包绘制序列图。我只需要例如,带有传入和传出(丢失和找到)消息。我已经使用 LaTeX 编译器建立了一个工作示例。

http://texdoc.net/texmf-dist/doc/latex/msc/manual.pdfhttp://texdoc.net/texmf-dist/doc/latex/msc/manual.pdf

\documentclass{article}
\usepackage{msc}
\begin{document}
\begin{msc}{test}
\declinst{a}{}{$A$}
\found{label}{}{a}
\end{msc}
\end{document}

得出这个结果

在此处输入图片描述

我需要的标签很长而且很复杂,所以我需要把圆圈和箭头之间的距离拉长,这样才有位置。我查看了文档,并尝试在 和 可选项中插入各种值poslabelposplacement没有任何效果。

如何才能使标签更长?

答案1

经过一段时间,实际上是几个小时后,我终于明白了该怎么做!

\documentclass{article}
\usepackage{msc}
\begin{document}
\begin{msc}{test}
 \drawframe = 
\declinst{a}{}{$A$}
\selfmesswidth = 5cm

%First outgoing
\lostsymbolradius = 0px
\lost[1]{label}{}{a}
\nextlevel
\nextlevel

%First receiving
\lostsymbolradius = 0px
\found[1]{label2}{}{a}
\nextlevel
\nextlevel

%Second outgoing
\lostsymbolradius = 0px
\lost[1]{label3}{}{a}

\end{msc}

\end{document}

答案2

通过设置\setlength{<some parameter>}{<length>},您可以根据需要更改默认设置。在这里,我更改了参数\selfmesswidth

\documentclass{article}
\usepackage{msc}
\begin{document}
\begin{msc}{test}
\setlength{\selfmesswidth}{3cm}
\setlength{\envinstdist}{3.5cm} % According to the above one
\declinst{a}{}{$A$}
\found{Very long label}{}{a}
\end{msc}
\end{document}

在此处输入图片描述

请注意,环境和最近的实例线之间的距离应进行相应调整,正如我在 中所做的那样\setlength{\envinstdist}{3.5cm}

相关内容