
我想使用msc
package.json 來編寫 UML 程式碼。所以我寫如下程式碼:
% arara: xelatex
% arara: clean1
% arara: clean: { files: [ Commands.aux , .main.ptd , TP.aux] }
\documentclass{article}
\usepackage{msc}
%\usepackage{xepersian}
%\settextfont{XB Niloofar}
\begin{document}
\begin{msc}{Example}
\declinst{usr}{User}{}
\declinst{m1}{Machine 1}{control}
\declinst{m2}{Machine 2}{drill}
\declinst{m3}{Machine 3}{test}
\mess{startm1}{usr}{m1}
\nextlevel
\mess{startm2}{m1}{m2}
\nextlevel
\mess{continue}{m2}{m3}
\mess{log}{m1}{envleft}
\nextlevel
\mess{output}{m3}{usr}[2]
\nextlevel
\mess{free}{m1}{usr}
\nextlevel
\end{msc}
\end{document}
它工作正常並通過與XeLatex
引擎運行來生成 pdf。但是當我啟動該包時xepersian
,它不起作用,也沒有 pdf。我能做些什麼?
當我使用 xepersian 套件運行時,我沒有收到錯誤,但無法開啟 pdf
我在下面的連結中上傳日誌檔案:
答案1
將環境封閉msc
在一個latin
環境中:
\documentclass{article}
\usepackage{msc}
\usepackage{xepersian}
\settextfont{Al Bayan}
\begin{document}
\begin{latin}
\begin{msc}{Example}
\declinst{usr}{User}{}
\declinst{m1}{Machine 1}{control}
\declinst{m2}{Machine 2}{drill}
\declinst{m3}{Machine 3}{test}
\mess{startm1}{usr}{m1}
\nextlevel
\mess{startm2}{m1}{m2}
\nextlevel
\mess{continue}{m2}{m3}
\mess{log}{m1}{envleft}
\nextlevel
\mess{output}{m3}{usr}[2]
\nextlevel
\mess{free}{m1}{usr}
\nextlevel
\end{msc}
\end{latin}
سلام
\end{document}
fontspec
請注意,該軟體包的最新更新xepersian
不起作用。原因是其作者違反了expl3
程式設計準則並使用了現已刪除的私有fontspec
函數。
我指的是xepersian
版本17.2(2017/01/16)和fontspec
版本2.5d(2017/01/24)。