MetaPost使用
简介
MetaPost是一种制图语言,由John D. Hobby开发。
如果你要学习它,可以去下面的网址看看。
权威手册: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使用的更多相关文章
- 在ctex环境下利用Metapost作图
使用Metapost作图,是LaTeX的好搭档.下面介绍如何在ctex环境下的使用Metapost作图. 首先新建一个test.mp的Metapost文件. 在文件开始需要声明如下代码: prolog ...
- Windows下LATEX排版论文攻略—CTeX、JabRef使用介绍
Windows下LATEX排版论文攻略—CTeX.JabRef使用介绍 一.工具介绍 TeX是一个很好排版工具,在学术界十分流行,特别是数学.物理学和计算机科学界. CTeX是TeX中的一个版本,指的 ...
- Linux学习内容
Linux学习要点(转载自红联) 一.学习Linux的基本要求1. 掌握至少50个以上的常用命令. 2. 熟悉Gnome/KDE等X-windows桌面环境操作 . 3. 掌握.tgz..rpm等软件 ...
- (转)完全用GNU/Linux工作 by 王珢
完全用GNU/Linux工作 王珢 (看完这篇博文,非常喜欢王珢的这篇博客,也我坚定了学gnu/linux的决心,并努力去按照国外的计算机思维模式去学习编程提高自己.看完这篇文章令我热血沸腾 ...
- Linux 知识框架
Linux要点 一.Linux的基本要求 1. 掌握至少50个以上的常用命令. 2. 熟悉Gnome/KDE等X-windows桌面环境操作 . 3. 掌握.tgz..rpm等软件包的常用安装方法 4 ...
- LaTeX学习教程
本来我对LaTeX不是看好的,毕竟都是命令格式的.觉得有word就足够啦word可视化操作方便快捷. 但是由于要写论文等,在导师要求下潜心学习一下,不知不觉间被LaTeX的强大功能所吸引.现在很多出版 ...
- 清华申请退学博士作品:完全用Linux工作
http://www.cnblogs.com/cbscan/articles/3252872.html 下文地址 http://blog.oldboyedu.com/use-linux/ 按: 尽管我 ...
- GIS开源软件大全
3 - F 3map:行星地球项目由3map驱动,这是一个自由软件,由Telstra宽带基金会创建并支持,提供客户端与服务器的能力以在线再现虚拟地球. Amein!:其界面介于ArcMap和UMN M ...
- Linux的学习路线图
一.学习Linux的基本要求1. 掌握至少50个以上的常用命令. 2. 熟悉Gnome/KDE等X-windows桌面环境操作 . 3. 掌握.tgz..rpm等软件包的常用安装方法 4. 学习添加外 ...
随机推荐
- centos6.9 升级glibc(升级到 2.17版)
原系统centos6.9自带GLIBC_2.12,安装一些软体提示版本不对,决定升级. wget http://ftp.gnu.org/gnu/glibc/glibc-2.17.tar.gz tar ...
- 自制Linux映像和发行版Robomind
通常ARM开发板厂商会提供已编译好的Linux映像供用户使用.我手上的MarS Board的厂商提供了Ubuntu映像,只是版本有点老,文件系统也比较大.之前我已经移植了较新的Linux内核,现在我想 ...
- 20145307第五次JAVA学习实验报告
20145307<Java程序设计>第五次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.05.06 实验名 ...
- Net_Prop 之 CTerrorPlayer 属性
Sub-Class Table (1 Deep): DT_TerrorPlayer Sub-Class Table (2 Deep): DT_CSPlayer Sub-Class Table (3 D ...
- 虚拟机网卡名称修改为 eth0
默认网卡名称是 eno16777736 1.修改配置文件 ifcfg-eno16777736 [root@localhost ~]# cd /etc/sysconfig/network-scripts ...
- 使用Nginx搭建图片服务器(windows)
知识点:在windows系统中,搭建图片上传服务器 参考博客:http://blog.csdn.net/u010942834/article/details/72953441 1.进入官网下载ngin ...
- springboot部署在云服务器上
1.window云服务器上 在本地的SpringBoot的根目录下 mvn clean package 打包jar 在云服务上安装jdk 将jar拷贝到云服务器上 在jar包所在的相应的位置,执行ja ...
- swagger2 坑 记录
swagger2 只认 @RequestMapping 注解! 不认@RestController 注解 @RestController @RequestMapping(value = "/ ...
- 编译libmemcached
php的扩展memcache,不支持cas,所以我们要装memcached扩展,memcached扩展是基于libmemcached,所以要先安装libmemcached 一.下载软件 1.libme ...
- checkbox及css实现点击下拉菜单
面试遇到的问题.用checkbox中的:checked伪类选择器实现. 通过label标签来触发checkbox的unchecked 和checked两种状态:用css普通同胞选择器 ~.另外补充一点 ...