简介

MetaPost是一种制图语言,由John D. Hobby开发。

如果你要学习它,可以去下面的网址看看。

官网:http://tug.org/metapost

权威手册:http://tug.org/docs/metapost/mpman.pdf

王垠的介绍:http://www.ctex.org/documents/shredder/metapost.html

可以预览生成图形的网站:http://www.tlhiv.org/mppreview/

MetaPost是LaTeX语言中生成图形的一个工具,我是拿来自己画图用的。

http://www.ctex.org/documents/packages/graphics/index.htm

一个示例

MetaPost生成的图形通常可以放到TeX等排版工具中使用。为了专注于MetaPost本身,我们先不介绍与TeX有关的内容,看看如何成生图形。

以下是MetaPost的HelloWorld。

 1 beginfig(1);
2
3 z0=(1cm,1cm);
4 z1=(3cm,1cm);
5 z2=(3cm,3cm);
6 z3=(1cm,3cm);
7
8 draw z0--z1--z2--z3--cycle;
9 drawdot z0 withpen pencircle scaled 4pt;
10 drawdot z1 withpen pencircle scaled 4pt;
11 drawdot z2 withpen pencircle scaled 4pt;
12 drawdot z3 withpen pencircle scaled 4pt;
13
14 endfig;
15
16 end

将以上代码保存为文件fig.mp。

使用mpost生成PostScript文件:mpost fig,生成fig.1文件。

假如我要使用pdf来查看图形,可以将其转换为pdf格式:ps2pdf fig.1,生成fig.1.pdf文件。

打开该pdf就能看成生成的图形了。

数据类型

MetaPost共有10种数据类型:numeric,pair,path,transform,(rgb)color,cmykcolor,string,boolean,picture,pen。

numeric:数值。包括整数小数(分数),正数负数。最小的正整数是1/65536,最大的正数4096。

pair:数对,例如。常用来表示坐标。

path:

transform:

(rgb)color:rgb颜色。由3个数值组成,每个数值的取值范围从0到1。预设的颜色有red=(1,0,0),green=(0,1,0),blue=(0,0,1),black=(0,0,0),white=(1,1,1)。

cmykcolor:cmyk颜色。由4个数值组成,每个数值的取值范围从0到1。

string:字符串,需要在双引号中。

boolean:布尔值,有true和false。

picture:

pen:

画直线段

给出几个点的坐标,使用“--”将各个点连接起来即可。

1 draw (0,0)--(1cm,1cm)--(2cm,0)

部分转载自:http://www.cnblogs.com/migney

MetaPost使用的更多相关文章

  1. 在ctex环境下利用Metapost作图

    使用Metapost作图,是LaTeX的好搭档.下面介绍如何在ctex环境下的使用Metapost作图. 首先新建一个test.mp的Metapost文件. 在文件开始需要声明如下代码: prolog ...

  2. Windows下LATEX排版论文攻略—CTeX、JabRef使用介绍

    Windows下LATEX排版论文攻略—CTeX.JabRef使用介绍 一.工具介绍 TeX是一个很好排版工具,在学术界十分流行,特别是数学.物理学和计算机科学界. CTeX是TeX中的一个版本,指的 ...

  3. Linux学习内容

    Linux学习要点(转载自红联) 一.学习Linux的基本要求1. 掌握至少50个以上的常用命令. 2. 熟悉Gnome/KDE等X-windows桌面环境操作 . 3. 掌握.tgz..rpm等软件 ...

  4. (转)完全用GNU/Linux工作 by 王珢

    完全用GNU/Linux工作 王珢      (看完这篇博文,非常喜欢王珢的这篇博客,也我坚定了学gnu/linux的决心,并努力去按照国外的计算机思维模式去学习编程提高自己.看完这篇文章令我热血沸腾 ...

  5. Linux 知识框架

    Linux要点 一.Linux的基本要求 1. 掌握至少50个以上的常用命令. 2. 熟悉Gnome/KDE等X-windows桌面环境操作 . 3. 掌握.tgz..rpm等软件包的常用安装方法 4 ...

  6. LaTeX学习教程

    本来我对LaTeX不是看好的,毕竟都是命令格式的.觉得有word就足够啦word可视化操作方便快捷. 但是由于要写论文等,在导师要求下潜心学习一下,不知不觉间被LaTeX的强大功能所吸引.现在很多出版 ...

  7. 清华申请退学博士作品:完全用Linux工作

    http://www.cnblogs.com/cbscan/articles/3252872.html 下文地址 http://blog.oldboyedu.com/use-linux/ 按: 尽管我 ...

  8. GIS开源软件大全

    3 - F 3map:行星地球项目由3map驱动,这是一个自由软件,由Telstra宽带基金会创建并支持,提供客户端与服务器的能力以在线再现虚拟地球. Amein!:其界面介于ArcMap和UMN M ...

  9. Linux的学习路线图

    一.学习Linux的基本要求1. 掌握至少50个以上的常用命令. 2. 熟悉Gnome/KDE等X-windows桌面环境操作 . 3. 掌握.tgz..rpm等软件包的常用安装方法 4. 学习添加外 ...

随机推荐

  1. ubuntu 14.04 163镜像

    1.备份原来/etc/apt/sources.list 2.以下内容覆盖原来文件内容 deb http://mirrors.163.com/ubuntu/ trusty main restricted ...

  2. java 与C# 时间格式 交互

    方法一 C#端代码 IsoDateTimeConverter convert = new IsoDateTimeConverter(); string ret = JsonConvert.Serial ...

  3. 【英语学习】How do I stop overthinking at night?

    2017-04-03 If you were to say to the grown-ups: "I saw a beautiful house made of rosy brick, wi ...

  4. java.lang.NoSuchMethodError: net.sf.cglib.core.Signature

    今天二次开发Dubbo-admin的管理平台,开启tomcat直接报错,错误关键字为“ java.lang.NoSuchMethodError: net.sf.cglib.core.Signature ...

  5. presto + slider 提交计算至yarn

    10.112.28.240 prestocli 10.183.225.158 perstoser hive-site.xml useUnicode=true&characterEncoding ...

  6. 2017年4月16日 一周AnswerOpenCV佳作赏析

    2017年4月16日 一周AnswerOpenCV佳作赏析 1.HelloHow to smooth edge of text in binary image, based on threshold. ...

  7. 总结的一些json格式和对象/String/Map/List等的互转工具类

    总结的一些json格式和对象/String/Map/List等的互转工具类,有需要的可以看看,需要引入jackson-core-asl-1.7.1.jar.jackson-jaxrs-1.7.1.ja ...

  8. CentOS7安装GNOME可视化界面

    1.首先安装X(X Window System),命令为 yum groupinstall "X Window System" 回车(注意有引号)   1CentOS Linux系 ...

  9. Metasploit安装——centos6.5

    1:安装ruby yum -y install ruby 2:根据官方文档执行,安装支持包  yum install xorg-x11-server-Xvfb -y 3:官网下载最新版的Metaspl ...

  10. shell编程学习笔记之sed编辑器

    在shell编程中,大多数处理的都是文本文件.对文本文件进行处理除了使用交互式文本编辑器(vi[m],gedit......)也可以使用另外一类:流编辑器. 流编辑器:使用预定义的编辑规则来对文本进行 ...