我在 MSC 圖中有很長的消息。我想將訊息分成兩行,這樣它們就不會重疊。我嘗試過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}