1. 程式人生 > >LaTeX中的TikZ宏包繪圖簡單示例

LaTeX中的TikZ宏包繪圖簡單示例

lac fff under 字體 etc left use 說明 per

LaTeX中的宏包TikZ在繪圖方面的功能很強,我已將相關的說明文檔發送到51CTO中(http://down.51cto.com/data/2456407 ),大家可以去下載查閱,不需要下載豆。
  下面舉一個非常簡單的例子,復雜的繪圖請大家自己看說明文檔。這裏順便談一下LaTeX的學習,建議邊用邊學,直接找一份範例來用,碰到沒有的功能就去網上查資料。這樣做一方面是因為LaTeX的內容實在是太多了;另一方面是要學以致用。
 
環境:Ubuntu 16.04 64位桌面版
工具:TeXstudio

\documentclass[oneside, AutoFakeBold]{article}

\usepackage{geometry}          % 用於頁面設置
% 設置為A4紙,並按照MSOffice的默認尺寸設置四周邊距
\geometry{
  a4paper,
  left = 3.17cm,
  right = 3.17cm,
  top = 2.54cm,
  bottom = 2.54cm
}

% 顏色支持
\usepackage{xcolor}

\usepackage{xeCJK}
% 設置字體。註意順序,第一個定義的就是默認字體
\setCJKfamilyfont{song}{方正書宋簡體}
\newcommand{\song}{\CJKfamily{song}}
\setCJKfamilyfont{kaiti}{方正楷體簡體}
\newcommand{\kaiti}{\CJKfamily{kaiti}}
\setCJKfamilyfont{heiti}{方正黑體簡體}
\newcommand{\heiti}{\CJKfamily{heiti}}

% 繪圖支持
\usepackage{tikz}
\usetikzlibrary{arrows, positioning}

\begin{document}

\begin{tikzpicture}[
    node distance = 10mm,  % 節點間距
    % 定義“紅底方框”樣式
    紅底方框/.style = {
      rectangle,
      minimum size =10mm,
      very thick,
      draw = red!50!black!50,
      top color = white,
      bottom color = red!50!black!20,
      font = \kaiti
    },
    % 定義“灰底圓角方框”樣式
    灰底圓角方框/.style = {
      rectangle, 
      minimum size = 10mm,
      rounded corners = 3mm,
      very thick,
      draw = black!50,
      top color = white,
      bottom color = black!20,
      font = \kaiti
    }
  ]
  \node (role)           [灰底圓角方框]               {角色};
  \node (drama)          [紅底方框, left = of role]  {方案};
  \node (stage property) [紅底方框, right = of role] {道具};
  \draw [->] (drama) to (role);
  \draw [->] (role) to (stage property);
\end{tikzpicture}

\end{document}

 
效果如下:
 
技術分享圖片
 
說明:
1、代碼中涉及到3個中文字體,大家可以去方正公司下載(http://www.foundertype.com/ ),這幾個都是官方免費提供的,可以免費商業使用。
2、在TeXstudio的配置中,要把編譯器設置成XeLaTex,如下圖所示:
技術分享圖片
3、在定義圖形樣式時,我用的是漢字,沒有使用英文,註意這裏是支持漢字的。實際使用中大家應該按照公司或學校的規定來做。我這裏用漢字是因為英文表示太長,遠不如漢字簡練。
4、在定義樣式與繪圖的代碼中我沒有加多少註釋,相信大家看得懂,過程就是“創建樣式->繪制節點->繪制節點間的線段”。

LaTeX中的TikZ宏包繪圖簡單示例