msc ダイアグラムに長いメッセージがあります。メッセージを 2 行に分割して、重ならないようにしようと思いました。試してみましたparbox
が、エラーが発生しました。msc メッセージでテキスト行を分割するにはどうすればよいでしょうか。コードと出力を以下に示します。
\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}
答え1
他のユーザーへの注意: このコードは、 の開発バージョン用に書かれておりmsc
、以下から入手可能です。http://satoss.uni.lu/software/mscpackage/msc
CTAN にある のバージョンでは動作しません。
使用できます\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}