سلام
با توجه به توضیحات قبلی، کد اصلاح شده بصورت زیر:
\documentclass[12pt,a4paper]{report}
\usepackage{tikz}
\usepackage{xepersian}
\settextfont{Yas}
\tikzstyle{vertexs}=[draw,minimum width=2 cm,minimum height=1cm]
\newcommand{\vertexs}{\node[vertexs]}
\begin{document}
\begin{center}
\begin{tikzpicture}[scale=1,thick]
\vertexs (a1) at (0,0) []{\rl{منبع اطلاعات}};
\vertexs (a2) at (3,0) []{\rl{کدگذار منبع}};
\vertexs (a3) at (6,0) []{\rl{کدگذار کانال}};
\vertexs (a4) at (9,0) []{مدولاتور};
\vertexs (a5) at (9,-2) []{\rl{کانال انتقال}};
\node (a6) at (6.3,-2) []{پارازیت};
\vertexs (a7) at (9,-4) []{\rl{دی مدولاتور}};
\vertexs (a8) at (6,-4) []{\rl{کدگشای کانال}};
\vertexs (a9) at (3,-4) []{\rl{کدگشای منبع}};
\vertexs (a10) at (0,-4) []{مقصد};
\draw[->] (a1) -- (a2);
\draw[->] (a2) -- (a3);
\draw[->] (a3) -- (a4);
\draw[->] (a4) -- (a5);
\draw[->] (a5) -- (a7);
\draw[->] (a6) -- (a5);
\draw[->] (a7) -- (a8);
\draw[->] (a8) -- (a9);
\draw[->] (a9) -- (a10);
\end{tikzpicture}
\end{center}
\end{document}
توضیح: اندازه شکل رو با scale=1
می تونی تغییر دهید در صورت نیاز و thick
برای ضخیم کردن خطوط.
خروجی:
حال شکل 1، پیوست شده، بصورت زیر:
\documentclass[12pt,a4paper]{report}
\usepackage{tikz}
\usepackage{xepersian}
\settextfont{Yas}
\tikzstyle{vertexs}=[draw,minimum width=2 cm,minimum height=1cm]
\newcommand{\vertexs}{\node[vertexs]}
\tikzstyle{vertexa}=[draw,minimum width=2.2cm,minimum height=1.6cm]
\newcommand{\vertexa}{\node[vertexa]}
\begin{document}
\begin{center}
\begin{tikzpicture}[scale=1,thick,>=stealth]
\vertexs (a1) at (0,0) []{\rl{منبع اطلاعات}};
\vertexs (a2) at (3,0) []{\rl{کدگذار منبع}};
\vertexs (a3) at (6,0) []{\rl{کدگذار کانال}};
\vertexs (a4) at (9,0) []{مدولاتور};
\vertexa (a5) at (10.7,-2.5) []{\rl{کانال انتقال}};
\node (a6) at (7,-2.5) []{پارازیت};
\vertexs (a7) at (9,-5) []{\rl{دی مدولاتور}};
\vertexs (a8) at (6,-5) []{\rl{کدگشای کانال}};
\vertexs (a9) at (3,-5) []{\rl{کدگشای منبع}};
\vertexs (a10) at (0,-5) []{مقصد};
\draw [->] (a1) -- (a2);
\draw [->] (a2) -- (a3);
\draw [->] (a3) -- (a4);
\draw [->] (a4) -| (a5.90);
\draw [->] (a5.270) |- (a7);
\draw [->] (a6) -- (a5);
\draw [->] (a7) -- (a8);
\draw [->] (a8) -- (a9);
\draw [->] (a9) -- (a10);
\end{tikzpicture}
\end{center}
\end{document}
توضیح: برای رسم راس یا گره مستطیلی شکل به نام های \vertexs
و راس 5 رو \vertexa
نامیدم از دستور زیر استفاده کردم:
\tikzstyle{vertexa}=[draw,minimum width=2.2cm,minimum height=1.6cm]
\newcommand{\vertexa}{\node[vertexa]}
برای رسم پیکان پر >=stealth
نوشتم.
توجه داشته باش که چون راس 6، نیاز به مستطیل نبود از دستور زیر استفاده کردم:
\node (a6) at (6.3,-2) []{پارازیت};
برای رسم یال شکسته، از راس 4 به راس 5 در 90 درجه طبق دستور زیر:
\draw [->] (a4) -| (a5.90);
برای رسم یال شکسته، از راس 5 در 270 درجه به راس 7 طبق دستور زیر:
\draw [->] (a5.270) |- (a7);
خروجی:
توجه: طبق دستورات زیر می توانی هم رسم کنید با استفاده از بسته tikz
و کتابخانه shapes
.
\documentclass[12pt,a4paper]{report}
\usepackage{tikz,xcolor}
\usetikzlibrary{shapes}
\usepackage{xepersian}
\settextfont[Scale=1.2]{Yas}
\tikzstyle{block}=[rectangle,draw,magenta,fill=cyan,text width=3em,text centered,rounded corners,minimum height=2em]
\begin{document}
\begin{center}
\begin{tikzpicture}[scale=1,thick,node distance=2cm,auto]
% Place nodes
\node [block] (a1) {یک};
\node[block,below of=a1,node distance=2cm](a2) {دو};
\node [block,left of=a2,node distance=3.5cm] (a3) {سه};
\node [block,right of=a2,node distance=3.5cm] (a4) {چهار};
% Draw edges
\path [draw,red,->] (a1.0) -| (a4.90);
\path [draw,green,->] (a1.270) -| (a2.90);
\path [draw,blue,->,dashed] (a1.180) -| (a3.90);
\end{tikzpicture}
\end{center}
\end{document}
خروجی:
موفق باشید.