天地有情

[MetaPost] 日本語 MetaPost --- uplatex , platex で使ってみる

日本語 MetaPost --- uplatex , platex で使ってみる

§1 はじめに

一応,能書きから.
MetaPost は Jhon Hobby によって開発された図形作成プログラムであり,文法などは D.E.Knuth の
MetaFont とよく似ています.MetaFont がgf形式のフォントを出力するのに対して,MetaPostは
PostScript(EPS)形式のファイルを出力します.科学技術文書の図形を作成するのに便利で強力なツールです.

本編では,W32TeX の uplatex と platex を使った ”日本語 MetaPost” の作成と実行方法などについて説明します.

§2 前準備の確認

既に必要なツールは揃っていると思いますが,念のため以下を確認して下さい.

2.1 uplatex の場合

   ・upmpost.exe
   ・uplatex.exe
   ・dvipdfmx.exe

   いずれも C:\w32tex\bin に格納されています.

2.2 platex の場合

   ・pmpost.exe
   ・platex.exe
   ・dvipdfmx.exe あるいは,dvips.exe + ps2pdf.exe

   いずれも C:\w32tex\bin に格納されています.


§3 uplatex による 日本語 MetaPost --- ソースファイルの文字コードはすべて UTF-8

3.1 例題:

==============================================================
赤いボールを描き,その中に文字列 ”赤いボール”と書き込む.
==============================================================

(1)uplatex において,共通で利用できる header.mp(uplatex用) を作成します.



【説明】
・1,2,6,7行目は ”決まり文句”であり,この通りに書く.2行目は %&uplatex とする.
・3行目   uplatex で使えるクラスファイルを指定.\documentclass{ujarticle}でも可.
・4行目   必要なパッケージ類を記述.
・7行目   etex; を忘れずに.

(2).mp ファイルの作成

ここでは,ball.mp ファイルを作成します.



【説明】

・1行目  前述の header.mp(uplatex用) を inputする.
・2行目  フォントを指定.ここでは "upgbm-h"を使う. -h の代わりに -v とすると 縦書き となる.
・6行目  赤い円を描く.
・7行目  ラベルとして ”赤いボール”を書き込む.
・4,8,9行目は ”決まり文句”であり,この通りに書く.なお,2番目の図形があるときは,beginfig(2)とする.

(3).tex ファイルの作成

ここでは, ball.tex ファイルを作成します.



【説明】

・1行目  [uplatex]オプションを忘れずに.
・4行目  \includegraphics で ball.1 を取り込むように指定.

(4)コンパイルの実行

いよいよコンパイルです.次の upmexec.cmd バッチファイルを作成すれば実行が楽になります.

upmexec.cmd(or .bat)
--------------------------------
@echo off
upmpost %1.mp
uplatex %1.tex
dvipdfmx %1.dvi
del %1.aux %1.log *.mpx *.dvi
--------------------------------

実行: upmexec ball


結果:

mp01.png





§4 platex による 日本語 MetaPost --- ソースファイルの文字コードはすべて Shift_JIS


(1)platex において,共通で利用できる header.mp(platex用) を作成します.



【説明】
・1,2,6,7行目は ”決まり文句”であり,この通りに書く.2行目は %&platex とする.
・3行目   platex で使えるクラスファイルを指定.
・4行目   必要なパッケージ類を記述.
・7行目   etex; を忘れずに.

(2).mp ファイルの作成

ここでは,ball.mp ファイルを作成します.



【説明】

・1行目  前述の header.mp(platex用) を inputする.
・2行目  フォントを指定.ここでは "gbm"を使う.
・6行目  赤い円を描く.
・7行目  ラベルとして ”赤いボール”を書き込む.
・4,8,9行目は ”決まり文句”であり,この通りに書く.なお,2番目の図形があるときは,beginfig(2)とする.

(3).tex ファイルの作成

ここでは, ball.tex ファイルを作成します.



【説明】

・1行目  jsarticle.clsを指定.
・4行目  \includegraphics で ball.1 を取り込むように指定.

(4)コンパイルの実行

いよいよコンパイルです.次の pmexec.cmd バッチファイルを作成すれば実行が楽になります.

pmexec.cmd(or .bat)
--------------------------------
@echo off
pmpost %1.mp
platex %1.tex
* dvips %1.dvi
* ps2pdf %1.ps %1.pdf
del %1.aux %1.log *.mpx *.dvi
--------------------------------

* dvips + ps2pdf の代わりに, dvipdfmx %1.dvi でも可.


実行: pmexec ball


結果:

mp02.png





§5 その他 --- uplatex で処理してみる

5.1 例題:

==============================================================
関数グラフ y=√x を描く.
==============================================================

(3.1 例題: を参考にします.)

(1)header.mp(uplatex用)はそのまま流用します.

(2).mp ファイルの作成

ここでは,function01.mp ファイルを作成します.



(3).tex ファイルの作成

ここでは, fuction01.tex ファイルを作成します.



(4)コンパイルの実行

実行: upmexec function01


結果:

mp03.png



(EOF)
スポンサーサイト
  1. 2015/08/18(火) 10:28:32|
  2. MetaPost