天地有情

[Latex] tikzinclude --- TikZイメージをインポートする

§1 はじめに

更新版: 2017/05/10 ("tikzinclude を使う" を改題,一部修正)

tikzinclude パッケージは,複数の tikzpicture環境 を保持している専用のファイルから一つの tikzpicture環境 を
指定し,LaTeX文書にインポートするものです.複数のLaTeX文書間での画像の再利用を簡素化します.

それには各tikzpicture環境に名前を付けて画像を選択できるようにします.実際には,tikzpicture環境のオプション
にTikZ-keyである /tikzinclude/figure=xxx にfigure名(xxx)を割り当てることによって行われます.

1.1 簡単な書式例

% common.tex
---------------------------------------------------
\begin{tikzpicture}[/tikzinclude/figure=foo1]
\node{foo1};
\end{tikzpicture}

\begin{tikzpicture}[/tikzinclude/figure=foo2]
\node{foo2};
\end{tikzpicture}

\begin{tikzpicture}[/tikzinclude/figure=foo3]
\node{foo3};
\end{tikzpicture}
---------------------------------------------------

figure名を命名した後に \includetikzgraphics[] {} コマンドを使用して、
指定の画像をインポートできます.例えば,foo1 ならば,

%main.tex
---------------------------------------------------
\documentclass{article}
\usepackage{tikzinclude}
\begin{document}
\includetikzgraphics[foo1]{common}
\end{document}
---------------------------------------------------

1.2 インストール

TeXLive/W32TeX などには標準でインストールされています.


1.3 マニュアル

コマンドラインから texdoc tizinclde を実行してください.


§2 サンプル

2.1 ソースプログラム

common.tex, mainA.tex, mainB.tex のソースプログラムを以下に示します.

■ common.tex -- (図形のDatabase のようなもの)
-----------------------------------------------------------------------------------------
%円筒形
\begin{tikzpicture}[rotate=90,/tikzinclude/figure=cylinder]
\fill[draw,left color=yellow,right color=orange,shading angle=45]%
(1,0) -- (1,5) to[out=90,in=90] (0,5) -- (0,0);
\fill[draw,left color=yellow,right color=orange,shading angle=45]%
(.5,0) ellipse (.5 and .25);
\end{tikzpicture}

%五角形
\begin{tikzpicture}[/tikzinclude/figure=pentagon]
\draw[fill=yellow,rotate=18] (0:2) -- (72:2) -- (144:2) -- (216:2) -- (288:2) -- cycle;
\draw[draw=green,fill=green!25,very thin]%
(0,0) -- (18:.5) arc (18:90:.5) node[above right] {$72^\circ$} -- cycle;
\draw[red,very thin] (18:2) -- (0,0) -- (90:2);
\end{tikzpicture}

%三角形
\begin{tikzpicture}[/tikzinclude/figure=trigon]
\fill[green] (90:4) -- (210:4) -- (-30:4) -- cycle;
\fill[blue,path fading=west] (90:4) -- (210:4) -- (-30:4) -- cycle;
\fill[red,path fading=south] (90:4) -- (210:4) -- (-30:4) -- cycle;
\end{tikzpicture}

%ボール\begin{tikzpicture}[/tikzinclude/figure=ball]
\shade[ball color=white] (0,0) circle (3ex) ;
\shade[ball color=red ] (1,0) circle (3ex) ;
\shade[ball color=blue ] (2,0) circle (3ex) ;
\end{tikzpicture}
-----------------------------------------------------------------------------------------

■ mainA.tex
----------------------------------------------
\documentclass{ltjarticle}
\usepackage{tikzinclude}
\usetikzlibrary{shapes.geometric,fadings}

\begin{document}
(1)円筒形を描きます\\[15pt]
\includetikzgraphics[cylinder]{common}%common.texからタグ[cylinder]をinput.

\bigskip

(2)5角形を描きます\\[15pt]
\includetikzgraphics[pentagon]{common}%common.texからタグ[pentagon]をinput.
\end{document}
----------------------------------------------


■ mainB.tex
----------------------------------------------
\documentclass{ltjarticle}
\usepackage{tikzinclude}
\usetikzlibrary{shapes.geometric,fadings}

\begin{document}
(1)三角形を描きます \\[15pt]
\includetikzgraphics[trigon]{common}%common.texからタグ[trigon]をinput.

\bigskip

(2)ボールを描きます\\[15pt]
\includetikzgraphics[ball]{common}%common.texからタグ[ball]をinput.
\end{document}
----------------------------------------------

2.2 コンパイル

  luajitlatex mainA
  
  および
  
  luajitlatex mainB

2.3 結果

(1)mainA

inctk01.png


(2)mainB

inctk02.png

スポンサーサイト
  1. 2014/11/10(月) 09:05:13|
  2. LaTeX Tools
  3. | トラックバック:0
  4. | コメント:0
<<[LaTeX] flow.exe --- LaTeXの picture環境 のフローチャートを生成する | ホーム | [LaTeX] tkz-fct入門 -- 数式をグラフ化する>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://konoyonohana.blog.fc2.com/tb.php/87-c140c4aa
この記事にトラックバックする(FC2ブログユーザー)