Tenho mensagens longas em um diagrama msc. Pensei em dividir a mensagem em duas linhas para que não se sobrepusessem. Eu tentei parbox
, mas isso resultou em um erro. Como posso dividir a linha de texto em uma mensagem msc? O código e a saída são mostrados abaixo.
\documentclass[10pt]{llncs}
\usepackage{underscore}
\usepackage{lipsum}
\usepackage[font=itshape]{quoting}
\usepackage[title]{appendix}
\usepackage{graphicx}
\usepackage{textcomp}
\usepackage{msc}
\usepackage{xcolor}
\begin{document}
\begin{figure}[htb!]
\[
\resizebox{\textwidth}{!}{
\centering
\setmsckeyword{}
\drawframe{no}
\hspace{-1cm}
\begin{msc}[small values, /msc/level height=0.6cm, /msc/label distance=0.5ex , /msc/first level height=0.75cm]{}
\setlength{\instwidth}{2.5\mscunit}
\setlength{\instdist}{5\mscunit}
\declinst{A}{}{A}
\declinst{B}{}{B}
\declinst{C}{}{C}
\mess{ Long message1(......,A very long message goes here,......)} {A}{B}
\mess{Long message2(......,A very long message goes here,......)} {B}{C}
\nextlevel
\end{msc}
}
\]
\caption[caption]{Figure.}
\end{figure}
\end{document}
Responder1
Nota para outros usuários: este código foi escrito para a versão de desenvolvimento do msc
, disponível emhttp://satoss.uni.lu/software/mscpackage/. Não funcionará com a versão msc
que está no CTAN.
Você pode usar\mess[text width=3cm,align=center]{...
\documentclass{article}
\usepackage{msc}
\begin{document}
\begin{figure}[htb!]
\centering
\setmsckeyword{}
\drawframe{no}
\begin{msc}[small values, /msc/level height=0.6cm, /msc/label distance=0.5ex , /msc/first level height=0.75cm]{}
\setlength{\instwidth}{1.8\mscunit}
\setlength{\instdist}{3\mscunit}
\declinst{A}{}{A}
\declinst{B}{}{B}
\declinst{C}{}{C}
\mess[text width=3cm,align=center]{ Long message1(......,A very long message goes here,......)} {A}{B}
\mess[text width=3cm,align=center]{Long message2(......,A very long message goes here,......)} {B}{C}
\nextlevel
\end{msc}
\caption[caption]{Figure.}
\end{figure}
\end{document}