MIF

求助编辑百科名片

MIF文件是MapInfo通用数据交换格式,这种格式是ASCⅡ码,可以编辑,容易生成,且可以工作在MapInfo支持的所有平台上。它将MapInfo数据保存在两个文件中:图形数据保存在.MIF文件中,而文本(属性)数据保存在.MID文件中。其中,.MIF文件有两个区域:文件头区域和数据节,文件头中保存了如何创建MapInfo表的信息,数据节中则是所有图形对象的定义。故MIF应是保存图形的一种文件格式

目录

相关信息
列类型
图形对象类型
相关样式
颜色
展开
相关信息
列类型
图形对象类型
相关样式
颜色
展开

编辑本段相关信息

简介

  MIF是Mapinfo用来向外交换数据的一种中间交换文件。当用户在Mapinfo中将一张Mapinfo地图表以MIF格式转出来 MIF文件中后,Mapinfo会同时在用户指定的保存目录下生成两个文件(*.mif,*.mid)。其中*. mif文件保存了该Mapinfo表的表结构及表中所有空间对象的空间信息(如:每个点对象的符号样式、点位坐标;每个线对象的线样式、节点数据、节点坐标;区域对象的填充模式、每个区域包含的子区域个数及每个区域的节点数、节点数等)。而*.mid文件则按记录顺序保存了每个空间对象的所有属性信息。这两个文件都为文本性质的文件,用户可以通过相应的文件读写方法实现对文件内容的读写。MapInfo数据在两个文件中——图形保存在.MIF文件中而文本数据包含在.MID文件中。文本数据是分界数据,每行一个记录以及行间的回车,或者回车加换行,或者换行。 MIF文件有两个区域—文件头区域和数据节。有关如何创建MapInfo表的信息保存在文件头中;图形对象定义保存在数据节中。

格式举例

  这是一个MIF 文件头的说明,方括号内是可选信息。MIF File header 格式:   Version n   Charset "characterSetName"   [ DELIMITER "<c>" ]   [ UNIQUE n,n.. ]   [ INDEX n,n.. ]   [ COORDSYS... ]   [ TRANSFORM... ]   COLUMNS n   <name> <type>   <name> <type>   …   …   DATA

分析

  Version 子句说明您所使用的是VERSION 1、VERSION 2、VERSION 300还是VERSION 450 格式。  Charset 子句指定在表中创建文本时使用的 字符集。   Delimiter 在引号中指定分隔符,缺省情况下,分隔符是TAB键;如果使用缺省值,则无需DELIMITER行。   Unique(唯一) 指定一个号码。这个号码指示数据库的一列;   Index(索引) 要指出表中的列有索引,可以在Index子句中引入一个号码(或一系列用逗号分隔的号码)。每个号码代表数据库的一列;INDEX 列表中的列将有附录为它们制作的索引。   CoordSys( 坐标系统)子句 指定COORDSYS子句以注明数据不是以经度/纬度形式保存的。未指定COORDSYS子句时,假定数据是以经度/纬度形式保存的。所有坐标都是以相对于东北象限的值保存的。(   其中一些参数设置比较复杂)   Columns(列) 指定列数。然后为每列创建一行,它包含列名、列类型,对于字符列和小数列,还包含一个指示字段宽度的数。   MIF文件的数据节在文件头之后,且必须由DATA 以单独的一行引入:   DATA    MIF文件的数据节可以有任意多个图形初值,每个初值代表一个图形对象。MapInfo使MIF和MID 文件中的条目相互匹配, MIF文件中的第一个对象与MID文件中的第一行关联, MIF文件中的第二个对象与MID 文件中的第二行关联,依此类推。如果MID 文件中特定的一行没有对应的图形对象,那么必须在MIF 文件中的相应位置上写一个“空白”对象(NONE)以保留该位置:   NONE

编辑本段列类型

  有效的列类型是  l char(宽度)   l integer(4 个字节)   l smallint(2 个字节,因此只能存储从-32767 到+32767 的数)   l decimal(宽度,小数位数)   l float   l date   l logical

编辑本段图形对象类型

  可以指定的图形对象为  l 点(point)   l 直线(line)   l 折线(polyline)   l 区域(region)   l 圆弧(arc)   l 文本(text)   l 矩形(rectangle)   l 圆角矩形(rounded rectangle)   l 椭圆(ellipse)

  一个点(point)对象需要两个参数:一个X 坐标和一个Y坐标。作为一个选项,可以设定代表该点的symbol(符号)。symbol   是用数字标明的。如果忽略了SYMBOL 子句,则使用当前symbol。   POINT x y   〔 SYMBOL (shape, color, size)〕

直线

  一个直线(line)对象需要四个参数;每个端点各一个X 坐标和一个Y 坐标。作为一个选项,可以指定pen  类型,如果没有指定pen类型,则使用当前pen 类型。   LINE x1 y1 x2 y2   〔 PEN (width, pattern, color)〕

折线

  一个折线(polyline)对象由一节或多节构成。如果该折线不止一节,则应包含MULTIPLE   关键字,并在其后写明节数。为每节设定一个numpts 参数(该参数指出该节中节点的数量),   其后为每个节点的x/y坐标对。用可选的PEN 子句(本附录稍后说明)来指定线样式。如果包含了可选的SMOOTH 关键字,则折线被平滑。   PLINE 〔 MULTIPLE numsections 〕   numpts1   x1 y1   x2 y2   :   〔 numpts2   x1 y1   x2 y2 〕   :   〔 PEN (width, pattern, color)〕   〔 SMOOTH 〕

区域

  一个区域(region)对象由一个或多个多边形构成。用numpolygons 参数设定多边形数量(紧   跟在REGION 关键字后面)。为每个多边形设定一个numpts参数(该参数指出该多边形中节点的数量),其后为每个节点的x/y坐标对。用可选的PEN   和BRUSH 子句(本附录稍后说明)指定该对象的样式。用可选的CENTER子句来精确定义该对象的中心位置。中心必须位于对象内。   REGION numpolygons   numpts1   x1 y1   x2 y2   :   〔numpts2   x1 y1   x2 y2 〕   :   〔 PEN (width, pattern, color)〕   〔 BRUSH (pattern, forecolor, backcolor)〕   〔 CENTER x y 〕

圆弧

  一个圆弧(arc)需要其外接矩形的对角位置以及该圆弧的起点(a)和终点(b)的角度,其中角度以度的形式表示,以时钟上三点钟处为零点反时针移动。作为一个选项,可以指定pen类型。(一段圆弧指定了一个椭圆的一段,圆弧的两角由外接矩形确定。)   ARC x1 y1 x2 y2   a b   〔 PEN (width, pattern, color)〕

文本

  一个文本(text)对象由一个文本字符串构成,不超过255个字符。要使文本字符串换行成多行,可在textstring参数内插入字符\n(例如“第一行\n   第二行\n第三行”)。x1、y1、   x2和y2 指定了文本在地图上的位置。间隔可以是1.0(单间距)、1.5 或2.0(双间距)。   用Font 子句来控制 字体等等。   TEXT "textstring"   x1 y1 x2 y2   〔 FONT...〕   〔 Spacing {1.0 | 1.5 | 2.0}〕   〔 Justify {Left | Center | Right}〕   〔 Angle text_angle〕   〔 Label Line {simple | arrow} x y 〕

矩形

  一个矩形(rectangle)需要一对对角的坐标。作为选项,可以指定pen和brush类型。   RECT x1 y1 x2 y2   〔 PEN (width, pattern, color)〕   〔 BRUSH (pattern, forecolor, backcolor)〕

圆角矩形

  一个圆角矩形(rounded rectangle)需要一对对角的坐标和圆的角度(a)。作为选项,可以指定pen 和brush   类型。圆角的角度用坐标单位表示。   ROUNDRECT x1 y1 x2 y2   a   〔 PEN (width, pattern, color)〕   〔 BRUSH (pattern, forecolor, backcolor)〕

椭圆

  一个椭圆(ellipse)对象需要其外接矩形的一对对角的坐标。作为选项,可以指定pen 和brush类型。   ELLIPSE x1 y1 x2 y2   〔 PEN (width, pattern, color)〕   〔 BRUSH (pattern, forecolor, backcolor)〕

编辑本段相关样式

Pen样式

  Pen 子句设定诸如直线、折线或圆弧此类的线性对象的宽度、图案和颜色。  Pen 子句有如下语法:   PEN (width, pattern, color)    Width是从1 到7 的一个数。1-7 是屏幕象素的宽度。11-2047是要转换为点的数值:   penwidth = (点数 * 10) + 100 只有在针对不可见的线,笔模式为1时才有效。    color 是一个整数,表示一个24 位的RGB颜色值。   Pattern 是一个从1到118的整数,模式号为1时可见。模式号和 画笔文件中画笔号相对应。可以用画笔 编辑器来编辑画笔文件。 有效的画笔号是从1 到画笔文件中最大的画笔号,应该不超过127。如果一个画笔样式是交叠的,就增加128 作为其画笔号。交叠样式在129-255范围之内。由于画笔文件可以修改,而且交叠也可以指定,所以画笔模式可以是1-255之间的数。

Brush 样式

  Brush 设定诸如圆或区域这样的填充对象的图案、前景颜色和背景颜色。Brush 子句有如下语法:   Brush (pattern, forecolor 〔, backcolor 〕)    forecolor(前景颜色)和 backcolor(背景颜色)参数都是整数,代表24 位RGB 颜色值。    pattern(图案)是一个1 到71 之间的数。注意:1 号图案是“不填充”而2号图案是纯色填充。

Symbol 样式

  Symbol 子句设定点对象的外观。Symbol 子句有三种格式,如下所述。    MapInfo 3.0语法  Symbol 子句设定一个点对象的外观。Symbol 子句有三种格式。  要设定一种使用“Old MapInfo Symbols”(MapInfo早期版本使用的符号)的Symbol 样式,使用如下语法:   SYMBOL (shape, color, size)    shape(形状)参数是一个整数值、31 或更大;31代表空白symbol(即该对象是不可见的)。标准symbol 集合包括32到67号symbol,但用户可以用Symbol 应用程序来自定义symbol集合。   color(颜色)参数是一个整数,代表一个24 位RGB颜色值   size(大小)参数是一个1 到48 之间的整数,代表点的尺寸。    TrueType字体语法  要设定一个基于TrueType 字体的字符的Symbol 样式,使用如下语法:   SYMBOL (shape, color, size, fontname, fontstyle, rotation)    fontname(字体名称)参数是一个文本字符串,指明一个字体的名称(例如“Wingdings”)。    fontstyle(字体样式)参数是一个控制样式设置(例如粗体)的整数。   自定义位图文件语法  要设定一个基于自定义位图文件的symbol 样式,使用如下语法:   SYMBOL (filename, color, size, customstyle)    filename(文件名)参数是一个文本字符串,它标明了CustSymb 目录中的一个位图文件(例如“Arrow.BMP”)。   customstyle(自定义样式)参数是一个整数,控制是否使用颜色和背景属性。

Font样式

  Font 子句设定文本对象的外观(字体、颜色等)。Font 子句有如下语法:   FONT ("fontname", style, size, forecolor 〔, backcolor〕 )   双引号内的 fontname(字体名称)是被显示的字体。   style(样式)是字体的文本属性。 MIF文件中的size(大小)必须是0,因为一幅地图上的文本对象是附加到该地图上的(这样在放大或缩小时文本尺寸改变)。   forecolor(前景颜色)是一个整数,代表一种24位RGB 颜色。   backcolor(背景颜色)是可选的;如果包含了它,则MapInfo在文本背后的区域中填充指定的颜色。

编辑本段颜色

  颜色通常是以红、绿和蓝色的相对浓度来定义的。其中每种颜色是一个0到255包括0和255之间的数;各种颜色的RGB 值由以下公式计算:   (红色 * 65536)+(绿色 * 256)+蓝色   这里是一些常用颜色及其数值:   红色:16711680   绿色:65280   蓝色:255   青色:65535   紫红:16711935   黄色:16776960   黑色:0

MIF 百科(http://baike.baidu.com/view/2877561.htm)相关推荐

  1. chrome浏览器的性能测试--本文引用自 百度百科http://baike.baidu.com/view/1835504.htm

    Google Chrome,又称Google浏览器,是一个由Google(谷歌)公司开发的开放原始码网页浏览器.该浏览器是基于其他开放原始码软件所撰写,包括WebKit和Mozilla,目标是提升稳定 ...

  2. NAS 百科 —— http://baike.baidu.com/item/NAS%E7%BD%91%E7%BB%9C%E5%AD%98%E5%82%A8

    NAS 百科 -- http://baike.baidu.com/item/NAS%E7%BD%91%E7%BB%9C%E5%AD%98%E5%82%A8 NAS(Network Attached S ...

  3. 分区文件http://wenku.baidu.com/view/d839d1868762caaedd33d4b7.html

    http://wenku.baidu.com/view/d839d1868762caaedd33d4b7.html

  4. http://wenku.baidu.com/view/63e7b8270066f5335a812142.html

    ---恢复内容开始--- http://wenku.baidu.com/view/63e7b8270066f5335a812142.html 迷宫最短路径问题解析 有一个二维数组,0表示路,-1表示墙 ...

  5. https://wenku.baidu.com/view/1f9138e903d8ce2f01662306.html

    https://wenku.baidu.com/view/1f9138e903d8ce2f01662306.html

  6. https://wenku.baidu.com/view/35c88b375acfa1c7aa00ccca.html--swot

    https://wenku.baidu.com/view/35c88b375acfa1c7aa00ccca.html 转载于:https://www.cnblogs.com/anruy/p/97519 ...

  7. Analysis of Struts2 : http://wenku.baidu.com/view/ad421874a417866fb84a8e75.html

    http://wenku.baidu.com/view/ad421874a417866fb84a8e75.html

  8. http://wenku.baidu.com/view/981f99d376eeaeaad1f330e7.html

    http://wenku.baidu.com/view/981f99d376eeaeaad1f330e7.html

  9. http://wenku.baidu.com/view/d6433106a6c30c2259019e63.html

    http://wenku.baidu.com/view/d6433106a6c30c2259019e63.html

最新文章

  1. 『浅入浅出』MySQL 和 InnoDB
  2. [dp]leetcode 746. Min Cost Climbing Stairs
  3. 一步步实现SDDC-双节点VSAN部署
  4. 文本分类(一)封装分词器
  5. 18 | 理论四:接口隔离原则有哪三种应用?原则中的“接口”该如何理解?
  6. 从语音识别到语义识别,中间还有多长的路要走?-模拟/电源-与非网
  7. Pointer Networks简介及其应用(格式化)
  8. 图解:如何修改CSDN账号昵称?
  9. android平台db4o使用示例
  10. 深度学习综述(下载PDF版)
  11. 网页国际化处理(中英文切换)
  12. okhttp3+retrofit2+rxjava2
  13. c语言填空题带答案,C语言练习题-填空题(带答案)
  14. 常用的60招电脑操作
  15. CentOS7中安装网易云音乐
  16. java什么算垃圾代码,[把代码写成诗]Java美好的承诺,自动回收垃圾
  17. 曾志伟原创港式奶茶店—喜乐街,台州金清人民路新店开业
  18. Ubuntu16.04通过docker安装微信和QQ
  19. 复盘,一个纸巾机创业项目是怎么失败的
  20. 一个月工资3500元,有双休,每天工作8小时

热门文章

  1. aspx html 转换 pdf,如何将ASPX文件转换为PDF文件?
  2. sql server 获取字符串长度, 判断字符串长度,获取字段长度, 判断字段长度
  3. 预装Windows 7的联想笔记本电脑 重新安装XP系统遇到花屏问题的解决方案
  4. 软件园里的流氓(5)
  5. PC和Android模拟器之间虚拟串口通信
  6. 经典算法之LRU算法
  7. [ICCV2019]Deep Single-Image Portrait Relighting
  8. SHEIN:中国企业全球化正确之路
  9. Android Gradle Plugin指南(五)——Build Variants(构建变种版本)
  10. Remote URL test failed: remote: Incorrect username or password (access token0m Aut